基本模型机设计与实现.docx

上传人:b****8 文档编号:9679534 上传时间:2023-05-20 格式:DOCX 页数:20 大小:124.89KB
下载 相关 举报
基本模型机设计与实现.docx_第1页
第1页 / 共20页
基本模型机设计与实现.docx_第2页
第2页 / 共20页
基本模型机设计与实现.docx_第3页
第3页 / 共20页
基本模型机设计与实现.docx_第4页
第4页 / 共20页
基本模型机设计与实现.docx_第5页
第5页 / 共20页
基本模型机设计与实现.docx_第6页
第6页 / 共20页
基本模型机设计与实现.docx_第7页
第7页 / 共20页
基本模型机设计与实现.docx_第8页
第8页 / 共20页
基本模型机设计与实现.docx_第9页
第9页 / 共20页
基本模型机设计与实现.docx_第10页
第10页 / 共20页
基本模型机设计与实现.docx_第11页
第11页 / 共20页
基本模型机设计与实现.docx_第12页
第12页 / 共20页
基本模型机设计与实现.docx_第13页
第13页 / 共20页
基本模型机设计与实现.docx_第14页
第14页 / 共20页
基本模型机设计与实现.docx_第15页
第15页 / 共20页
基本模型机设计与实现.docx_第16页
第16页 / 共20页
基本模型机设计与实现.docx_第17页
第17页 / 共20页
基本模型机设计与实现.docx_第18页
第18页 / 共20页
基本模型机设计与实现.docx_第19页
第19页 / 共20页
基本模型机设计与实现.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基本模型机设计与实现.docx

《基本模型机设计与实现.docx》由会员分享,可在线阅读,更多相关《基本模型机设计与实现.docx(20页珍藏版)》请在冰点文库上搜索。

基本模型机设计与实现.docx

基本模型机设计与实现

 

课程设计任务书

课程名称:

计算机组成原理

设计题目:

(共3个课题,最多3人一组,每组任选一题)

1.基本模型机设计与实现;

2.带移位运算的模型机的设计与实现;

3.复杂模型机的设计与实现。

已知技术参数和设计要求:

内容和技术参数:

利用所学过的理论知识,特别是微程序设计的思想,写出要设计的指令系统的微程序。

设计环境为TDN-CM+计算机组成原理教学实验系统,微机,虚拟软件。

将所设计的微程序在此环境中进行调试,并给出测试思路和具体程序段。

最后撰写出符合要求的课程设计说明书、完成答辩。

1.基本模型机设计与实现

指令系统至少要包括六条不同类型指令:

如一条输入指令,一条减法指令,一条加法指令,一条存数指令,一条输出指令和一条无条件转移指令。

2.带移位运算的模型机的设计与实现

在基本模型机的基础上增加左、右循环和左、右带进位循环四条指令

3.设计不少于10条指令的指令系统。

其中,包含算术逻辑指令,访问内存指令,程序控制指令,输入输出指令,停机指令。

重点是要包括直接、间接、变址和相对寻址等多种寻址方式。

以上数据字长为8位,采用定点补码表示。

指令字长为8的整数倍。

微指令字长为24位。

具体要求:

1、确定设计目标

确定所设计计算机的功能和用途。

2、确定指令系统

确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。

确定相对应指令所包含的微操作。

3、总体结构与数据通路

总体结构设计包括确定各部件设置以及它们之间的数据通路结构。

在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微命令。

综合考虑计算机的速率、性能价格比、可靠性等要求,设计合理的数据通路结构,确定采用何种方案的内总线及外总线。

数据通路不同,执行指令所需要的操作就不同,计算机的结构也就不一样。

4、设计指令执行流程

数据通路确定后,就可以设计指令系统中每条指令所需要的机器周期数。

对于微程序控制的计算机,根据总线结构,需考虑哪些微操作可以安排在同一条微指令中,哪些微操作不能安排在同一条微指令中。

5、确定微程序地址

根据后续微地址的形成方法,确定每个微程序地址及分支转移地址。

6、微指令代码化

根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码写入到控制存储器中的相应单元中。

7、组装、调试

在总调试前,先按功能模块进行组装和分调,因为只有各功能模块工作正常后,才能保证整机的正常运行。

当所有功能模块都调试正常后,进入总调试。

连接所有模块,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其他的运行方式等功能调试及执行指令的正确性验证。

课程设计说明书要求:

课程设计说明书按学校统一格式撰写和装订。

课程设计报告要求打印,其中的数据通路框图、微程序流程图、实验接线图用VISIO等工具软件绘制或用铅笔工工整整绘制。

(1)封面(包括:

题目、所在系、班级、学号、指导教师及时间等项,可到教务处网页上下载)

(2)任务书

(3)目录

目录要层次清晰,要给出标题及页次,目录的最后一项是无序号的“参考文献”。

(4)正文

正文应按目录中编排的章节依次撰写,要求计算正确,论述清楚,文字简练通顺,插图清晰,书写整洁。

文中图、表及公式应规范地绘制和书写。

正文是实践设计报告的主体,具体由以下几部分组成:

1)课程设计题目;

2)课程设计使用的实验设备;

3)课程设计步骤(包括确定所设计计算机的功能和用途、指令系统、总体结构与数据通路、设计指令执行流程、确定微程序地址、微指令代码化、组装、调试。

4)课程设计总结(包括自己的收获与体会;遇到的问题和解决的方法等);

(5)附录

附录1:

数据通路图

附录2:

微程序流程图

附录3:

实验接线图

附录4:

实验程序及微程序

附录5:

参考文献(资料)(格式规范参照长沙学院毕业设计(论文)撰写规范)

设计工作量:

(1)作品:

设计的最终作品包括硬件和软件两个部分,要求能够演示并达到设计指标的要求。

每个学生(或小组)在作品完成后,要经指导教师检查,同意拆除后方可拆卸。

(2)论文:

严格按上述课程设计说明书的要求撰写和装订。

每个学生一份。

成绩评定标准:

课程设计的成绩分为:

优秀:

、良好、中等、及格、不及格五个等级。

优秀:

完成复杂模型机的设计与实现,指令系统完备有更新扩充。

调试成功。

文档规范齐全。

良好:

完成模型机的设计与实现,指令系统指令种类丰富有一定的更新。

调试成功。

文档规范齐全。

中等:

完成基本模型机的设计与实现,在老师指导下对指令系统有更新。

调试成功。

文档规范齐全。

及格:

完成基本模型机的设计与实现。

调试成功。

文档规范齐全。

不及格:

没有课程设计报告,无故缺勤,不能完成调试者不及格。

工作计划:

时间:

15、16周

讲授:

2课时

答疑及设计:

22课时

上机调试:

12课时

答辩:

4课时

 

指导教师签名:

         日期:

 2010-12-10  

 

教研室主任签名:

       日期:

        

 

系主任签名:

         日期:

        

设计背景

通过计算机组成原理理论课和几次实验的学习,尝试设计六条机器指令,并编写相应的微程序,完成由基本单元电路构成一台基本模型机,再经过调试指令和模型机使其在微程序的控制下自动产生各部件单元的正常工作控制信号。

在设计基本模型机4的实验过程中,个别部件单元的控制信号是人为模拟产生的,而本课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。

这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一条微程序。

本课程设计要求实现六条机器指令:

IN(输入),与AND(逻辑乘),STA(存数),OUT(输出),或OR(逻辑加),异或XOR(逻辑异)的输入,输出。

重点主要在逻辑运算的设计中。

设计目标

在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元组成系统,构造一台基本模型计算机。

本次课程设计主要是为其定义六条机器指令,编写相应的微程序,并上机调试运行,形成整机概念。

用微程序控制器实现以下指令功能,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,自拟编写加ADD,减SUB,循环左移RLC的应用程序。

全部微指令设计完毕后,编写二进制代码,即使每条指令代码化。

连接线路在ZY15CompSys12BB计算机组成原理教学实验箱上运行,并显示输出实验结果。

 

概要设计

1.在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台稍微复杂的模型计算机;

2.为其定义六条机器指令,并编写相应的微程序,具体上机调试掌握整机概念

设计仪器

TDX—CM+计算机组成原理教学实验系统一台,排线若干;

PC机一台。

设计内容

部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能,这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。

本实验采用六条机器指令:

IN,OUT,STA,加ADD,减SUB,循环左移RLC其指格式如下:

地址         内容          助记符                说明 

00            00         IN                 ;输入开关数据→R0,采集数据

01            10         ADD[0AH]          ;R0+[0AH]→R0

02            0A                            ;地址

03            20         STA[0BH]        ; R0→[0BH]

04            0B                            ;地址

05            30         OUT[0BH]        ;[0BH] →BUS,输出显示

06            0B                            ;地址

07            40         SUB[0AH]       ;R0-[0AH] →R0

08            0A                          ;地址

09            50         RLC

0A            01

0B

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序.

存储器读操作:

拨动总清开关CLR后,控制台开关SWB,SWA为”00”时,按START微动开关,可对RAM连续手动读操作.

存储器写操作:

拨动总清开关CLR后,控制台开关SWBSWA置为”01”时,按START微动开关可对RAM进行连续手动写入.

启动程序:

拨动总清开关CLR后,控制台开关SWBSWA置为“11”时,按START微动开关,既可转入到第01号“取址”微指令,启动程序运行.

上述三条控制台指令用两个开关SWBSWA的状态来设置,其定义如下

表3-1读写变化

SWB

SWA

控制台指令

0

0

1

0

1

1

读内存(KRD)

写内存(KWE)

启动程序(RP)

微代码定义如表

24

23

22

21

20

19

18

17

16

151413

121110

987

6

5

4

3

2

1

S3

S2

S1

S0

M

Cn

WE

A9

A8

A

B

C

uA5

uA4

uA3

uA2

uA1

uA0

 

表3-3A,B,P字段内容

A字段B字段P字段

15

14

13

控制信号

12

11

10

控制信号

9

8

7

控制信号

0

0

0

.0

0

0

0

0

0

0

0

1

LDRI

0

0

1

RS_G

0

0

1

P1

0

1

0

LDDR1

0

1

0

0

1

0

0

1

1

LDDR2

0

1

1

0

1

1

1

0

0

LDIR

1

0

0

1

0

0

P4

1

0

1

LOAD

1

0

1

ALU_G

1

0

1

1

1

0

LDAR

1

1

0

PC_G

1

1

0

LDPC

当拟定“取指令”微指令时,该微指令的判别测试字段为P1测试。

由于“取指”微指令是所有微程序都使用的公用微指令,因此P1测试结果出现多路分支。

本次课程设计用指令寄存器的前4位(I7-I4)作为测试条件,出现6路分支,占用6个固定微地址单元。

控制台操作为P4测试,它以控制台开关SWB,SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。

当分支微地址单元固定后,剩下的其他地方就可以一条微指令占用控存一个微地址单元随意填写。

 

当全部微程序设计完毕之后,应将每条微指令代码化:

运行:

01

02

10

INADDSTAOUTJMPSUB

101112131415

010307162630

 

04261731

01

32

01

33

01

 

0101

 

控制台

00

20

WRITE(01)READ(00)RUN(11)

212023

2422

01

3027

图3-1微程序流程图

表3-4二进制微代码表

微地址

S3~CN

RD

M17M16

A

B

P

uA5~uA0

00

000000

0

11

000

000

100

010000

01

000000

0

11

110

110

110

000010

02

000000

0

01

100

000

001

001000

03

000000

0

01

110

000

000

000100

04

000000

0

01

011

000

000

000101

05

000000

0

11

010

001

000

000110

06

100101

0

11

001

101

000

000001

07

000000

0

01

110

000

000

010110

10

000000

0

00

001

000

000

000001

11

000000

0

11

110

110

110

000011

12

000000

0

11

110

110

110

000111

13

000000

0

11

110

110

110

001110

14

000000

0

11

110

110

110

011001

15

001100

0

11

000

001

000

011101

16

000000

0

01

110

000

000

001111

17

000000

0

01

010

000

000

010101

20

000000

0

11

110

110

110

010010

21

000000

0

11

110

110

110

010100

22

000000

0

01

010

000

000

010111

23

000000

0

11

000

000

000

000001

24

000000

0

00

010

000

000

011000

25

000001

1

10

000

101

000

000001

26

000000

1

01

000

001

000

000001

27

000001

1

10

000

101

000

010000

30

000001

1

01

000

101

000

010001

31

000000

0

01

110

000

000

000100

32

000000

0

01

011

000

000

000101

33

000000

0

11

010

001

000

000110

34

011000

0

11

001

101

000

011111

35

000110

0

11

000

100

000

011110

36

000000

0

11

001

100

000

011111

37

000000

0

11

010

001

000

010101

下面介绍指令寄存器(IR):

指令寄存器用来保存当前正在执行的一条指令。

当执行一条指令时,先把他从内存取到缓冲寄存器中,然后再传送至指令寄存器。

指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试[P

(1)],通过节拍脉冲T4的控制以便识别所要求的操作。

“指令译码器:

”(实验板上标有“INSDECODE”的芯片)根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。

本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUTDEVICE);另一种是数码块,它作为输出设备(OUTDEVICE)。

例如:

输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。

输出时,将输出数据送到数据总线上,当写信号(W/E)有效时,将数据打入输出锁存器,驱动数码块显示。

 

详细设计

4.1系统需求分析

一台计算机所能执行的各种指令集合称为指令系统或指令集。

一台特定的计算机只能执行自己指令系统中的指令。

因此,指令系统就是计算机的机器语言。

指令系统表征着计算机的基本功能和使用属性,它是计算机系统设计中的核心问题。

指令系统的设计主要括指令功能、操作类型的设计,寻址方式和指令格式的设计。

计算机的性能与它所设置的指令系统有很大的关系,指令系统反映了计算机的主要属性,而指令系统的设置又与机器的硬件结构密切相关。

指令是计算机执行某种操作的命令,而指令系统是一台计算机中所有机器指令的集合。

通常性能较好的计算机都设置有功能齐全、通用性强、指令丰富的指令系统,而指令功能的实现需要复杂的硬件结构来支持。

4.2系统目标

在基本模型机的基础上改进并实现IN,OUT,STA,加ADD,减SUB,循环左移RLC六条指令。

4.3功能分析

该系统实现的功能是对输入的数据可以和内存中的数据进行连续的加、减及循环左移运算,并对其结果进行存储,显示等功能,从而得到一个简易的复杂模型机所实现的功能。

4.4详细步骤

(1)按图4-1连接实验线路。

4-1实验线路图

(2)写程序

联机读/写程序

按照规定格式,将机器指令及表5-2微指令二进制表成十六进制的如下格式文件。

微指令格式中的微指令代码微将表5-2中的24位微代码按从左到右分成3个8位,将此三个8位二进制代码化为相应的十六进制数即可。

程序

$P0000

$P0110

$P0350

$P04FE

$P0520

$P06FD

$P0740

$P08A0

$PA030

$PA1FD

$PFD2C

$PFE2A

$PFF2B

$M00018001

$M0165ED82

$M0200C048

$M0300E004

$M0400A005

$M0501B206

$M06959A01

$M0700E017

$M08001001

$M0901ED83

$M0A01ED87

$M0B01ED8E

$M0C01ED96

$M0D01ED98

$M0E00E00F

$M0F009015

$M15030201

$M1600D001

$M17028201

$M1800E019

$M1900B01A

$M1A01A21B

$M1B659A01

(3)运行程序

 

1)单步运行程序

A、将STEP置为STEP,STOP置为RUN。

B、拨动总清开关CLR(0→1),微地址清零,微程序计数器清零。

程序首地址00H。

C、在实验程序软件载入数据后,选择DEBUG,进入界面后按照提示按F2键,即单步运行一条微指令。

可以观察机器的运行过程,以加深对计算机执行指令过程的了解。

D、运行结束后,可检查存数单元中的结果是否和理论值一致。

2)按指令运行

A、将STEP置为STEP,STOP置为RUN。

B、拨动总清开关CLR(0→1),微地址清零,微程序计数器清零。

程序首地址00H。

C、在实验系统载入数据后,选择DEBUG。

D、在运行界面下按动F1,即系统自动按照指令阶段运行,对照微程序流程图,观察微地址显示灯是否和流程一致,观察屏幕上显示的每一步的运行结果是否与计算的出的理论值相符。

3)连续运行

A、将STEP置为STEP,STOP置为RUN。

B、拨动CLR开关,清微地址及程序记数器

C、然后在实验系统载入数据后.按下F3键,即可停机后,可检查存数单元(OAH)结果是否正确。

 

1总结

经过这次课程设计,我体会到自己所学的东西太少了,很多都不知道。

虽然这次设计的只是一个小程序,但是这其间我还是学到了不少东西。

在这次课程设计的过程,有些很基本的知识出现记混淆的现象,通过查书及询问同学,最终明白了。

本次课程设计我们要设计一台微程序控制的模型机,以对计算机能有一个整机的概念,完成对计算机组成原理这门课程的综合应用,达到学习本书的作用。

作为一个计算机系学生这是必需掌握的,使我们对数据选择器,移位器,加法器,运算器,存储器和微程序控制器,有了比较透彻的认识。

由于计算机设计的部件较多,结构原理较复杂,对于我们这样的初设计者来说感到无从下手,所以我们在整个过程中采取由浅入深,由简单到复杂的放法,通过这次设计,使我们能清楚的了解计算机的基本组成,基本原理和设计步骤,设计思路和调试步骤,最终能清晰的建立起整机概念,为独立完成计算机设计奠定了基础。

课程设计结束了,从中我们也学到了不少知识。

虽然计算机组成原理的课程设计与学习已经结束,可我们学习之路并没有结束,我们会继续努力学习其相关的知识,以适应社会的发展与需要,这样才能真正成为一名合格的大学生。

在此次的设计中,感谢老师对我们的帮助和指导。

过程还不够完善,希望老师继续指导。

 

参考文献(资料)

[1]《计算机组成原理》学习指导与训练.旷海兰等编著.中国水利水电出版社,2004.

[2]计算机原理与设计.宋焕章张春元王保恒.长沙:

国防科技大学出版社,2000.

[3]白中英.计算机组成原理(第二版).北京:

科学出版社,1998

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

当前位置:首页 > 法律文书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2