计算机组成原理课设.docx
- 文档编号:16813909
- 上传时间:2023-07-17
- 格式:DOCX
- 页数:25
- 大小:414.07KB
计算机组成原理课设.docx
《计算机组成原理课设.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课设.docx(25页珍藏版)》请在冰点文库上搜索。
计算机组成原理课设
一、课程设计的原始资料及依据
查阅有关计算机组成原理的教材、实验指导书等资料,进一步熟悉微程序控制器原理,微指令的设计方法。
在掌握运算器、存储器、微程序控制器等部件的单元电路实验的基础上,进一步将各部件组成系统,构造一台基本模型计算机。
为给定的机器指令编写相应的微程序,上机调试,掌握整机概念。
二、课程设计主要内容及要求
1.认真阅读资料,掌握给定的机器指令的操作功能。
2.分析并理解数据通路图。
3.根据数据通路图画出给定的机器指令的微程序流程图。
4.根据微指令格式编写每条机器指令对应的微程序,形成“二进制微指令代码表”。
5.全部微程序设计完毕后,将微程序中各个微指令正确地写入E2PROM芯片2816中。
6.进行机器指令程序的装入和检查。
7.运行程序,检查结果是否和理论值一致。
8.IN、ADD、JMP指令为必做指令,另外新定义1条机器指令重复上述过程。
各组要求新定义的机器指令如下:
设计组编号
机器指令助记符
操作功能说明
设计组编号
机器指令助记符
操作功能说明
1
AND[addr]
R0AND[addr]->R0
6
NOT[addr]
2
OR[addr]
R0OR[addr]->R0
7
DEC[addr]
[addr]-1->R0
3
XOR[addr]
R0XOR[addr]->R0
8
LOD[addr]
[addr]->R0
4
SUB[addr]
R0-[addr]->R0
9
DECR
R0-1->R0
5
ROA[addr]
9.STA和OUT指令为选做指令,供有能力的学生完成。
10.记录出现故障的现象,并对故障进行分析,说明排除故障的思路及故障性质。
11.独立思考,认真设计。
遵守课程设计时间安排。
12.认真书写课程设计说明书,避免相互抄袭。
三、对课程设计说明书撰写内容、格式、字数的要求
1.课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:
设计题目、设计目的、设备器材、设计原理及内容、设计步骤、遇到的问题及解决方法、设计总结、设计小组评语、参考文献等。
一般不应少于3000字。
2.在适当位置配合相应的实验原理图、数据通路图、微程序流程图、实验接线图、微指令代码表等图表进行说明。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
3.设计总结部分主要写本人设计期间所做工作简介、得到了哪些设计成果、以及自己的设计体会,包括通过课程设计有何收获,程序有哪些不足之处,哪里遇到了困难,解决的办法,以及今后的目标。
设计小组评语处注明设计组编号、设计组组长、设计组成员,并由设计组组长给出评语。
评语包括该同学主要完成了哪些任务,课程设计期间的表现和态度如何,组长自己的评语由小组其他成员集体讨论后写出。
4.课程设计说明书手写或打印均可,具体要求如下:
手写时要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;
打印时采用A4纸,页边距均为20mm,章标题(如:
2设计原理及内容)和目录、摘要、参考文献、设计小组评语等部分的标题用小三号黑体,上下各空1行,居中书写;一级节标题(如:
2.1设计原理)采用黑体四号字,二级节标题(如:
2.1.1数据通路)采用黑体小四号字,左对齐书写。
正文采用宋体小四号字,行间距18磅,每个自然段首行缩进2个字。
图和表的要有编号和标题,如:
图2.1数据通路图;表1.1机器指令表。
图题与表题采用宋体五号字。
表格内和插图中的文字一般用宋体五号字,在保证清楚的前提下也可用更小号的字体。
英文字体和数字采用TimeNewRoman字体,与中文混排的英文字号应与周围的汉字大小一致。
页码用五号字,在每页底端居中放置。
5.课程设计说明书装订顺序为:
封面、任务书、成绩评定表、目录、正文、参考文献、设计小组评语。
在左侧用订书钉装订,不要使用塑料夹。
四、设计完成后应提交成果的种类、数量、质量等方面的要求
1.完成“基本模型机”中指定机器指令的操作功能,运行稳定。
2.撰写课程设计说明书。
五、时间进度安排
顺序
阶段日期
计划完成内容
备注
1
第1天
(12月8日)
阅读资料、系统分析设计
2
第2天
(12月9日)
系统分析设计、微程序编制
3
第3-4天
(12月10日-11日)
微程序输入、调试及运行
4
第5天
(12月12日)
基本模型机运行验收
按组号验收
5
第6-7天
(12月13日-14日)
撰写课程设计说明书
六、主要参考资料(文献)
[1]王健、王德君.计算机组成原理实验指导书.沈阳工程学院,2005
[2]白中英.计算机组成原理(第4版).北京:
科学出版社,2007
[3]蒋本珊.计算机组成原理.北京:
清华大学出版社,2004
[4]唐朔飞.计算机组成原理.北京:
高等教育出版社,2000
沈阳工程学院
计算机组成原理课程设计成绩评定表
系(部):
信息工程系班级:
计本061学生姓名:
吴娟张健任江涛
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作。
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
计算机组成原理课程设计
设计小组任务分配及自评
组号
第4组
组长
吴娟
全体成员
任务
学号:
01
姓名:
吴娟
学号:
03
姓名:
张健
学号:
18
姓名:
任江涛
分配微地址
√
控制台操作编码
√
实验电路接线
√
√
IN指令
√
ADD指令
√
JMP指令
√
新指令【SUB】
√
STA指令(选做)
√
OUT指令(选做)
√
出勤情况
良好√中等差
良好√中等差
良好中等√差
课程设计说明书
撰写比例
50%
30%
20%
备注
设计小组自评
能够积极认真的完成老师布置的任务,并且调动组员的积极性,做到与组员共同讨论并解决问题,使组员能够更好的配合在一起
能够积极去图书馆查询资料,主动向老师问问题,主动参与讨论,配合组长工作完成自己的任务
认真阅读指令并能主动向组长询问问题,以求弄明白;同时能主动查询资料,主动参与讨论,配合组长工作完成自己的任务
摘要
“计算机组成原理”是计算机科学与技术系的一门核心专业基础课程。
一台数字计算机基本上可以划分为两大部分——控制部件和执行部件。
控制器就是控制部件,而运算器、存储器、外围设备相对控制器来讲,就是执行部件。
控制部件与执行部件之间就是通过控制线来联系的。
控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,而执行部件接受微命令后所进行的操作,叫做微操作。
本次设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。
计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
本次的课程设计是通过TDN-CM计算机组成原理教学实验系统上完成基本模型机的设计与实现。
各部件单元的控制信号时认为虚拟产生的,而本次设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。
这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
此报告除了设计简单的IN(输入)、ADD(二进制加法)、JMP(无条件转移)三条机器指令外,另外加上STA(存数)、OUT(输出)以及SUB(二进制减法)三条机器指令。
在初步设计过程中,使用了两种外部设备,一种是二进制代码开关(DATAUNIT),它作为输入设备;另一种是发光二极管(BUSUNIT上的一组发光二极管),它作为输出设备。
例如:
输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。
输出时,将输出数据送到数据总线BUS上,驱动发光二极管显示算法的结果;在设计观察结果的过程中,通过使用两个开关SWB、SWA的状态来设置读取内存、写入内存和启动程序三种状态,同时利用P
(1)测试和P(4)测试这两个测试字段来分别作为微指令的判别测试字段和控制台操作的判别测试字段。
微程序流程图、微指令的首地址、机器指令及微指令的二进制代码设计完成后,正确的写入E2PROM芯片2816中。
关键词机器指令微指令微程序
目录
摘要I
1设计基础1
1.1设计题目1
1.2设计目的1
1.3设备器材1
2设计原理及内容2
2.1设计原理2
2.2设计内容2
2.2.1机器指令2
2.2.2数据通路3
2.2.3微指令3
2.2.4微程序地址转移电路5
2.2.5控制台操作微程序7
3设计步骤8
3.1连接实验线路8
3.2写入程序8
3.3运行程序9
4问题及解决方法10
设计总结11
参考文献12
1设计基础
1.1设计题目
基本模型机的设计与实现
1.2设计目的
1.在掌握部件单元电路实验的基础上,进一步将其组成系统,构造一台基本模型计算机。
2.为其定义五条机器指令,并编写相应的微程序,上机调试,掌握整机概念。
1.3设备器材
TDN-CM计算机组成原理教学实验系统一台,排线若干。
2设计原理及内容
2.1设计原理
前面的部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。
这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
本系统使用两种外部设备,一种是二进制代码开关(DATAUNIT),它作为输入设备;另一种是发光二极管(BUSUNIT上的一组发光二极管),它作为输出设备。
例如:
输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。
输出时,将输出数据送到数据总线BUS上,驱动发光二极管显示。
2.2设计内容
2.2.1机器指令
本次设计将完成六条机器指令的微程序设计:
IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、SUB(二进制减法)、JMP(无条件转移)。
其中机器指令码的最高4位为操作码。
IN为单字长(8位),其余为双字长指令。
XXXXXXXX为addr对应的二进制地址码。
机器指令程序及数据存放地址举例如表2.1所示。
表2.1机器指令程序及数据存放地址
地址(二进制)
内容(二进制)
助记符
说明
01000000
00000000
IN
“DATAUNIT”→R0
01000001
00010000
ADD[4BH]
R0+[4BH]→R0
01000010
01001010
01000011
00100000
STA[4CH]
R0→[4CH]
01000100
01001011
01000101
00110000
OUT[4CH]
[4CH]→BUS
01000110
01001011
01000111
01000000
SUB[4DH]
R0+[4DH]→R0
01001000
01001101
01001001
01010000
JMP40H
40H→PC
01001010
01000000
01001011
00110100
01001100
00110101
01001101
00110110
2.2.2数据通路
实验系统的数据通路图,如图2.1所示。
图2.1数据通路图
注意:
①片选信号CE=0为有效电平,CE=1为无效电平。
②WE=1为写入,WE=0为读出。
③LOAD和LDPC同时为“1”时,可将总线上的数据装入到PC中;LDPC为“1”,同时LOAD为“0”时,将PC中内容加1。
④M=0为算术运算,M=1为逻辑运算。
⑤CN=0表示运算开始时低位有进位,否则低位无进位。
2.2.3微指令
微指令字长共24位,其控制位顺序如图2.2所示。
图2.2微指令格式
其中UA5~UA0为下一条微指令微地址,A、B、C为三个译码字段,分别由三个控制位译码出多种不同控制信号。
A字段中的LDRi为打入工作寄存器信号的译码器使能控制位。
B字段中的RS-B、RD-B、RI-B分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码。
C字段中的P
(1)~P(4)是四个测试字位。
其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图2.5所示。
AR为算术运算是否影响进位及判零标志控制位,其为零有效。
将画好的微程序流程图中每一CPU周期的微操作按微指令格式转化成二进制代码,填入如下格式的二进制代码表中,如表2.2所示。
表2.2微指令代码
微地址
(八进制)
S3S2S1S0MCNWECELDPC
A
B
C
UA5---UA0
(八进制)
00
000000011
101
110
100
20
20
000000011
110
111
000
22
22
000000000
000
000
000
20
21
000000011
110
111
000
24
24
000000100
000
110
000
21
23
000000011
110
111
000
01
01
000000000
100
000
001
40
40
000000010
001
110
000
23
41
000000011
110
111
000
11
11
000000010
010
001
000
12
12
000000000
110
000
000
13
13
000000000
011
000
000
14
14
100101010
001
101
000
23
42
000000011
110
111
000
31
31
000000000
110
000
000
32
32
000000100
000
001
000
23
43
000000011
110
111
000
51
51
000000000
110
000
000
52
52
000000000
000
000
000
23
44
000000011
110
111
000
61
61
000000010
010
001
000
62
62
000000000
110
000
000
63
63
000000000
011
000
000
64
64
011000010
001
101
000
23
45
000000011
110
111
000
71
71
000000001
101
000
000
23
2.2.4微程序地址转移电路
本实验系统的指令寄存器(IR)用来保存当前正在执行的一条指令。
当执行一条指令时,先把该指令从内存取到缓冲寄存器中,然后再传送至指令寄存器。
指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试[P
(1)],通过节拍脉冲T4的控制以便识别所要求的操作。
“指令译码器”(实验板上标有“INSDECODE”的芯片)根据指令中的操作码译码后的结果,将微控器单元的微地址修改为下一条微指令的地址。
地址修改要依靠实验系统的微程序地址转移电路来完成,该电路如图2.3所示。
图2.3微程序地址转移电路
图中左侧的FC、FZ、P
(1)~P(4)均为低电平有效。
当T4有正脉冲信号到来时该电路开始工作。
I7~I2中输入指令寄存器的第7~2位,SE5~SE1为微程序地址转移电路的输出结果。
根据SE5~SE1的值,实验系统自动将下一条微指令的原始地址UA4~UA0修改为实际的正确地址。
修改方法是将SE5~SE1的值与下一条微指令的原始地址UA4~UA0进行按位操作,SE5~SE1中为1的位对应的原始地址UA4~UA0中的位保持不变,而SE5~SE1中为0的位对应的原始地址UA4~UA0中的位强置为1。
根据该逻辑电路图,得SE1~SE5的逻辑表达式:
(1)
(2)
(3)
(4)
(5)
系统涉及到的各个机器指令的微程序流程图如图2.4所示:
图2.4微程序流程图
2.2.5控制台操作微程序
为了向RAM中装入机器指令程序和数据,检查写入是否正确,并能启动机器指令程序执行,还必须设计三个控制台操作微程序。
存储器读操作(KRD):
拨动总清开关CLR(使CLR从1→0→1)后,控制台开关SWB、SWA置为“00”时,按START微动开关,可对RAM连续手动读操作。
存储器写操作(KWE):
拨动总清开关CLR后,控制台开关SWB、SWA置为“01”时,按START微动开关可对RAM进行连续手动写入。
启动程序:
拨动总清开关CLR后,控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入到第01号“取指”微指令,启动程序运行。
上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如表2.3所示。
表2.3控制台指令
SWB
SWA
控制台指令
0
0
读内存(KRD)
0
1
写内存(KWE)
l
l
启动程序(RP)
三个控制台操作微程序的流程如图2.5所示。
图2.5控制台操作微程序流程图
注意:
微程序流程图上的单元地址为8进制。
控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。
当分支微地址单元固定后,余下的微指令可以存放在控制存储器的其他任意单元中。
当设计“取指”微指令时,该微指令的判别测试字段为P
(1)测试。
由于“取指”微指令是所有微程序都使用的公用微指令,因此P
(1)的测试结果出现多路分支。
本机用指令寄存器的前4位(IR7—IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。
3设计步骤
3.1连接实验线路
连接实验线路,仔细查线路无误后接通电源。
实验线路如图3.1所示。
图3.1实验线路图
3.2写入程序
1、将微代码写入微控器中的E2PROM芯片2816中
⑴将编程开关置为PROM(编程)状态。
⑵将实验板上“STATEUNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。
⑶用二进制模拟开关置微地址MA5—MA0。
⑷在MK24-MK1开关上置微代码,24位开关对应24位显示灯,开关量置为“0”时灯亮,开关量为“1”时灯灭。
⑸启动时序电路(按动启动按钮“START”),即将微代码写入到2816的相应地址对应的单元中。
⑹重复⑴-⑸步骤,将微代码写入2816中。
2、校验微代码
⑴将编程开关置为READ(校验)状态,实验板上“STATEUNIT”状态不变。
⑵用二进制模拟开关置微地址MA5—MA0。
⑶启动时序电路(按动启动按钮“START”),读出微代码。
观察显示灯MD24-MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。
如果不同,则将开关置于PROM编程状态,重新执行⑵即可。
3、使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。
⑴使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。
⑵拨动总清开关CLR(1→0→1),微地址寄存器清零。
此时用“DATAUNIT”单元的8位二进制开关给出要写入RAM区的首地址,控制台SWA、SWB开关置为“10”,按动一次启动开关START,微地址显示灯显示“010001”,再按动一次START,微地址灯显示“010100”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即完成该条指令的写入。
机器指令的首地址只要第一次给入即可,PC会自动加1,所以,每次按动START,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。
⑶写完程序后须进行校验。
拨动总清开关CLR(1→0→1)后,微地址清零。
此时用“DATAUNIT”单元的8位二进制开关置要读的RAM区的首地址,控制台开关SWA、SWB为“00”,按动启动START,微地址灯显示“010000”,再按动START
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理
![提示](https://static.bingdoc.com/images/bang_tan.gif)