组成原理课程设计复杂模型机.docx
- 文档编号:2170160
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:22
- 大小:892.46KB
组成原理课程设计复杂模型机.docx
《组成原理课程设计复杂模型机.docx》由会员分享,可在线阅读,更多相关《组成原理课程设计复杂模型机.docx(22页珍藏版)》请在冰豆网上搜索。
组成原理课程设计复杂模型机
课程设计报告
课程名称:
计算机组成原理
设计题目:
复杂模型机
专业:
xxxxxx
姓名:
xx
学号:
xxxxx
同组人:
xxxxxx
指导教师:
xx
二零一六年一月
1、课程设计任务书
1.1设计任务
1、基本模型机的设计与实现。
2、在基本模型机的基础上设计一台复杂模型机。
1.2性能指标和设计要求
利用所学过的理论知识,特别是微程序设计的思想,设计基于微程序控制器的模型计算机,包括设计相应的硬件平台、机器指令系统和微指令等。
设计环境为TD-CMA计算机组成原理教学实验箱、微机,联机软件等。
同时设计好基于模型机的测试验证程序,并在设计好的硬件平台上调试通过,以验证所设计的模型机功能的可行性与可靠性。
在设计完成的前提下,撰写出符合要求的课程设计说明书并通过设计答辩。
1.基本模型机设计与实现
设计一台简单模型机,在具备基本必要的硬件平台的基础上,进一步要求其机器指令系统至少要包括五条不同类型指令:
如一条输入指令(假设助记符为IN),一条加法指令(假设助记符为ADD),一条输出指令(假设助记符为OUT)、一条无条件转移指令(假设助记符为JMP)和一条停机指令(假设助记符为HLT);在设计好的模型机基础上,设计一个进行两个数求和运算的测试验证程序,用以验证模型机功能的可行性与可靠性。
2.在任务1的基础上,增加机器指令系统的功能,设计具有不少于10条机器指令的复杂指令系统模型机,包含算术逻辑指令、访问内存指令、控制转移指令、输入输出指令、停机指等令。
数据的寻址方式采用寄存器直接寻址。
利用设计的复杂模型机实现两个数的减法运算并判断差得正负,差为正数则输出A,差为负数则输出B,差为零则输出C。
在设计好的模型机基础上,进一步设计一个测试验证程序,验证模型机功能的可行性与可靠性。
3、基本模型机和复杂模型机的CPU数据字长为8位,采用定点补码表示。
指令字长为8的整数倍。
微指令字长为24位。
2、本设计模型机体系结构及功能
2.1模型机的体系结构
依据计算机系统的层次结构,本次设计的模型机可简化为图1所示的四层结构。
我们需要对每一个层次进行设计和实现。
对于最上层的应用程序,本次设计需要设计一个应用程序的测试实例来验证下面三层构成的模型机的功能可行性与可靠性。
2.2模型机所具有的基本功能
本模型机共设计三大类指令,其中包括运算类指令,控制转移类指令,数据传送类指令。
运算类指令包含三种运算,算术运算,逻辑运算和移位运算。
数据转移类指令包含访问内存指令、输入输出指令等,控制类指令包括停机指令等。
实现的功能如:
两寄存器的内容相加减,寄存器中数据的移位,外设与寄存器内容交换等多种功能。
3、模型机硬件设计
3.1模型机总体结构设计
总体结构设计包括确定模型机应具有的基本功能部件以及它们之间的数
据通路。
根据课堂中所掌握的知识我们可以知道,计算机是由五大部件组成,包括:
运算器,控制器,存储器,输入设备和输出设备。
所以我们在设计硬件时基于所给出的实验平台选出我们所需要的五大部件(其中包括一些必要的寄存器件)。
根据课堂上掌握的只是我们可以知道计算机中总线类型分为:
数据总线,地址总线,控制总线。
因此我们在连接线路时脱离不了这三大类型相应的信号(数据信号,地址信号,控制信号)。
并且我们根据冯诺依曼机的特点可以知道,计算机的指令在内存中按照其执行顺序存放,并且对于微程序控制器的计算机,控存中必须有固化的微指令。
3.2模型机的硬件实现
在本次设计中,硬件的实现基于已给出的实验平台,并根据我们所设计的模型机选择具有控制数据通路开关的必须元器件,通过接插线(各种连线等)将具有控制数据通路的相关引脚进行器件连接,组成所设计的模型机硬件系统(物理机)。
3.3模型机数据通路的设计
在上面总体结构和硬件实现的基础上,我们组根据各部件之间的逻辑组成关系并综合考虑计算机的速率以及可靠性等各方面因素,设计出合理的数据通路结构。
数据通路的不同,执行指令所需要的逻辑操作也就不同,计算机的结构也就不同。
在此基础上,在后面的微指令设计阶段,就可以依据数据通路关系确定模型机工作过程中的所有微操作,并进一步确定微指令格式中的相应微命令。
本模型机的硬件实现电路如下图所示:
图中MC单元(控制器)与其右侧的三个单元之间以及ALU®单元间的连线均为本模型机中数据通路的控制开关的引脚,控制相关微命令从而执行对应的微操作。
本模型机的数据通路框图:
4、模型机机器指令系统设计
4.1指令设计
模型机设计三大类指令共十六条,其中包括运算类指令、控制转移类指令,数据传送类指令。
运算类指令包含两种运算,算术运算、逻辑运算,设计有5条运算类指令,分别为:
ADD、AND、INC、SUB、OR,所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。
控制转移类指令有三条HLT、JMP、BZC,用以控制程序的分支和转移,其中HLT为单字节指令,JMP和BZC为双字节指令。
数据传送类指令有IN、OUT、MOV、LDI、LAD、STA、PUSH、POP共6条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,除MOV指令为单字节指令外,其余均为双字节指令。
4.2指令格式
所有单字节指令(ADD、AND、INC、SUB、OR、RR、HLT、PUSH、MOV)格式如下:
7654
32
10
OP-CODE
RS
RD
其中,OP-CODE为操作码,RS为源寄存器,RD为目的寄存器,并规定:
RS或RD
选定的寄存器
00
01
10
11
RO
R1
R2
R3
IN和OUT的指令格式为:
7654
32
(1)
10
(1)
7—0
(2)
OP-CODE
RS
RD
P
其中括号1表示第一个字节,2表示第二个字节,P为I/O端口号,占用一个字节,并规定:
A7A6
选定
地址空间
00
IOY0
00-3F
01
IOY1
40-7F
10
IOY2
80-BF
11
IOY3
C0-FF
其中,A7和A6是地址总线的高2位,I/O地址译码图如下:
PUSH的指令格式为:
7654
32
(1)
10
(1)
OP-CODE
RS
RP(作为栈指针的寄存器SP)
系统设计五种数据寻址方式,即立即、直接、间接、变址和相对寻址,LDI指令为立即寻址,LAD、STA、JMP和BZC指令均具备直接、间接、变址和相对寻址能力。
LDI的指令格式如下,第一字节同前一样,第二字节为立即数:
7654
(1)
32
(1)
10
(1)
7—0
(2)
OP-CODE
RS
RD
data
LAD、STA、JMP和BZC指令格式如下:
7654
(1)
32
(1)
10
(1)
7—0
(2)
OP-CODE
M
RD
D
其中M为寻址模式,具体见表5-3-2,以R2作为变址寄存器RI:
寻址模式M
有效地址E
说明
00
01
10
11
E=D
E=(D)
E=(RI)+D
E=(PC)+D
直接寻址
间接寻址
RI变址寻址
相对寻址
POP的指令格式如下:
7654
(1)
32
(1)
10
(1)
7—0
(2)
OP-CODE
XX
RP(作为栈指针的寄存器SP)
取最后两位作为RD
4.3指令系统
汇编符号
指令的格式
功能
MOVRD,RS
ADDRD,RS
SUBRD,RS
ANDRD,RS
ORRD,RS
RRRD,RS
INCRD
PUSHRS
0100
RS
RD
0000
RS
RD
1000
RS
RD
0001
RS
RD
1001
RS
RD
1010
RS
RD
0111
**
RD
1011
RS
RP(作为栈顶指针SP)
RS→RD
RD+RS→RD
RD-RS→RD
RD∧RS→RD
RD∨RS→RD
RS右循环→RD
RD+1→RD
将指定寄存器中的内容压入栈中
LADMD,RD
STAMD,RS
JMPMD
BZCM,D
1100
M
RD
D
1101
M
RD
D
1110
M
**
D
1111
M
**
D
E→RD
RD→E
E→PC
当FC或FZ=1
E→PC
INRD,P
OUTP,RS
POPRD
0010
**
RD
P
0011
RS
**
P
0011
**
RP
RD
最后两位
[P]→RD
RS→[P]
将栈内数据弹出至指定寄存器
HALT
0101
**
**
停机
5、模型机控制器微程序设计
5.1机器指令周期分析
根据课堂所掌握的知识,我们可以知道机器指令周期可以分为两部分:
取指周期和执行周期。
在本模型机中不同的机器指令取指周期都是相同的,都需要经过两个CPU周期和P<1>测试。
其中,两个CPU周期在数据通路上先后完成PC->AR,PC+1和MEM->IR的控制和传送操作;在P<1>测试阶段,对机器指令的操作码进行测试,确定指令实现的功能。
对于执行周期,每个机器指令执行过程互不相同,所经过的CPU周期数以及在不同周期对应的数据通路操作也不尽相同。
设计过程中,我们组根据每一条机器指令所要实现的功能,设计出其在执行过程中每个CPU周期在数据通路上完成的操作,并绘制出它的微程序流程图。
5.2模型机硬件译码电路
复杂模型机指令多,寻址方式多,只用一种测试已不能满足设计要求,为此译码电路更复杂,如下图所示:
其中,I[7]~I[0]为机器指令的第7位到第0位,T4表示在T4为高电平时有效。
本实验用到4个通用寄存器R0~R3,对寄存器的选择是通过指令的第四位,为此还得设计一个寄存器译码电路:
5.3微程序流程图设计
微程序流程图与方框图表示的指令的指令周期是一致的,一个方框是一个CPU周期,一个CPU周期对应一条为指令。
5.4微指令格式设计
由上述程序流程图可知,本模型机共用到了60条微指令,所以直接微地址需要6位
控制数据通路开关的为命令共有16种(包括3种P测试),但考虑本机硬件上最大支持24位的微指令,若用直接表示法,微指令字较长,24位可能不够,因此本模型机采用混合表示法;考虑到后期拓展及同组互斥的性质,将上述的微命令分到A,B,C三个字段中,每个字段长3位。
模型机中有针对运算器的操作,因此需要5位控制参数CN和S3~S0控制运算器的工作方式
模型机中有针对主存及外设的操作,所以需要3位微命令IO/M,WR和RD,分别表示针对外设/主存,读操作或写操作。
综上所述,我们所设计的模型机的微指令字长应为23位,但综合考虑到后后期功能的拓展以及设计上的便捷,所以我们决
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组成 原理 课程设计 复杂 模型