北华航天工业学院计算机组成原理课设报告.docx
- 文档编号:11297560
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:27
- 大小:340.92KB
北华航天工业学院计算机组成原理课设报告.docx
《北华航天工业学院计算机组成原理课设报告.docx》由会员分享,可在线阅读,更多相关《北华航天工业学院计算机组成原理课设报告.docx(27页珍藏版)》请在冰豆网上搜索。
北华航天工业学院计算机组成原理课设报告
《计算机组成与系统结构》
课程设计报告
报告题目:
RISC模型机的设计及实现
作者所在系部:
计算机科学与工程系
作者所在专业:
计算机科学与技术
作者所在班级:
B08512
作者姓名:
陈程(07)
指导教师姓名:
荆淑霞
完成时间:
2010/12/15
北华航天工业学院教务处制
目录
目录1
内容摘要1
课程设计任务书2
第1章绪论3
1.1设计地点3
1.2设计目的3
1.3设计内容3
1.4实验的环境3
1.5课程设计的要求4
第2章基础知识5
2.1概述5
2.2主要技术要点6
2.2.1ALU部件6
2.2.2.存储体6
2.2.3控制器6
第3章系统设计与实现8
3.1模型机结构8
3.2程序设计原理8
3.2.1数据格式及指令格式8
3.2.2指令系统9
3.2.3微指令设计10
3.3机器指令设计11
3.4联机实验12
3.4.1实验流程12
3.4.2实验连线13
3.4.3实验步骤13
3.4.3实验测试18
总 结19
致谢20
参考资料21
内容摘要
计算机系统是包括计算机硬件和软件的一个整体,两者不可分割,但处于不同的层次上。
计算机系统的层次结构模型中,第0层是硬件内核(逻辑线路),第1、2层是指令系统和实现该指令系统所采用的技术(组合逻辑技术、微程序控制技术、PLA控制技术),第3、4层为系统软件,第5层为应用软件,第6层是系统分析。
计算机组成原理涉及到的是第0、1、2这3层。
本次计算机组成原理的课程设计主要是实现一个较完整的模型机,在实验中了解,熟悉完整的单台计算机基本组成原理,掌握计算机中数据表示方法、运算方法、运算器的组成、控制器的实现、存储器子系统的结构与功能、输入/输出系统的工作原理与功能。
以及增强自己的动手能力。
课设主要依托组成原理实验室设备EL-JY-II来完成的,在实验当中利用了实验设备厂商开发的工具以及部分源程序代码。
关键词
模型机微指令机器指令微地址微代码
课程设计任务书
课题名称
基于74LS181的RISC模型机设计及实现
完成时间
2010/12/15
指导教师
荆淑霞
职称
副教授
学生姓名
陈程
班级
B08512
总体设计要求和技术要点
掌握计算机五大功能部件的组成及功能,熟悉完整的单台计算机基本组成原理,掌握计算机中数据表示方法、运算方法、运算器的组成、控制器的实现、存储器子系统的结构与功能、输入/输出系统的工作原理与功能。
(1)利用实验设备平台构造完整的模型机;
(2)利用运算器74LS181执行算术操作和逻辑操作;
(3)运用随机存储器RAM以及地址和数据在计算机总线的传送关系,实现运算器和存储器协同工作,读写数据,检查结果是否正确;
(4)应用微程序控制器,往EEPROM里任意写24位微代码,读出微代码并验证其正确性;
(5)构造指令系统,定义至少10条机器指令,实现比较完整的模型机功能;
(6)利用微程序控制器控制模型机运行,实现基于重叠和流水线技术的CPU技术。
要求画出系统模块框图:
按从上到下的设计方法,将整个设计依功能划分成若干模块;并确定各个模块的输出、输入端口及要完成的功能。
检查模块逻辑功能是否正确;
工作内容及时间进度安排
总计2周:
1.12月8日:
资料查阅、选题、系统总体设计
2.12月9日-12月10日:
熟悉开发环境和工具,模块设计、代码编制
3.12月13日:
系统调试与运行,成果验收
4.12月20日:
上交设计报告
课程设计成果
1.课程设计硬件系统及配套软件
2.课程设计报告书
第1章绪论
本课程设计综合运用运算器、控制器、存储器、输入输出系统、总线等部件和辅助电路,完成一个较完整的模型计算机设计和实现(包括硬件和软件)。
1.1设计地点
图书馆五楼计算机组成原理实验室。
1.2设计目的
通过课程设计对计算机组成和系统结构的基础知识进行全面的掌握,培养独立分析、研究、开发和综合设计能力。
1.3设计内容
掌握计算机五大功能部件的组成及功能,熟悉完整的单台计算机基本组成原理,掌握计算机中数据表示方法、运算方法、运算器的组成、控制器的实现、存储器子系统的结构与功能、输入/输出系统的工作原理与功能。
(1)利用实验设备平台构造完整的模型机。
(2)利用运算器74LS181执行算术操作和逻辑操作。
(3)运用随机存储器RAM以及地址和数据在计算机总线的传送关系,实现运算器和存储器协同工作,读写数据,检查结果是否正确。
(4)应用微程序控制器,往EEPROM里任意写24位微代码,读出微代码并验证其正确性。
(5)构造指令系统,定义至少10条机器指令,实现比较完整的模型机功能。
(6)利用微程序控制器控制模型机运行,实现基于重叠和流水线技术的CPU技术。
(7)在EL-JY-Ⅱ型计算机组成原理实验系统上,编写机器指令,实现数据的输入,输出,移位以及加法等运算功能。
1.4实验的环境
利用EL-JY-II型计算机组成与系统结构实验系统。
系统采用“基板+扩展板(CPU板)”形式;系统公共部分如数据输入/输出和显示、单片机控制、与PC机通讯等电路放置在基板上,微程序控制器、运算器、各种寄存器、译码器等电路放置在扩展板上。
1.5课程设计的要求
要求画出系统模块框图;按从上到下的设计方法,将整个设计依功能划分成若干模块;并确定各个模块的输出、输入端口及要完成的功能;检查模块逻辑功能是否正确。
第2章基础知识
2.1概述
计算机系统是包括计算机硬件和软件的一个整体,两者不可分割,但处于不同的层次上。
计算机系统的层次结构模型中,第0层是硬件内核(逻辑线路),第1、2层是指令系统和实现该指令系统所采用的技术(组合逻辑技术、微程序控制技术、PLA控制技术),第3、4层为系统软件,第5层为应用软件,第6层是系统分析。
计算机组成原理涉及到的是第0、1、2这3层。
计算机硬件主要由运算器、存储器、控制器和输入/输出五个部件组成。
图2.1微处理器结构
(1)运算器是进行算术运算和逻辑运算的部件,运算数据以二进制格式给出,同时也是计算机内部数据信息的重要通路。
运算器大体包括算术逻辑运算单元ALU、通用寄存器组、专用寄存器以及附加的控制线路。
(2)存储器是存放数据和程序的部件。
计算机中的存储器按功能分为主存、辅存和高速缓冲存储器CACHE,由这3类存储器构成存储系统的层次结构。
(3)控制器是计算机的核心部件,协调计算机系统的正常工作,主要包括指令寄存器、指令译码器和时序控制器等部件。
(4)输入输出部件包括各类输入输出设备和相应的接口。
2.2主要技术要点
2.2.1ALU部件
ALU部件是一种能进行多种算术运算和逻辑运算的组合逻辑电路。
它的基本逻辑结构是先行进位加法器。
74181是国际流行的4位ALU中规模集成电路,能对两个4位二进制代码进行16种算术运算和16种逻辑运算,这两类运算由M信号选择。
16种运算又由S3S2S1S0四位控制选择。
用
表示ALU的最低位进位输入,用
+4表示ALU的进位输出信号。
2.2.2.存储体
静态MOS存储器芯片由存储体、地址译码和控制电路等部分组成。
存储体是存储单元的集合。
地址译码器把二进制表示的地址转换为译码输入线上的高电位,驱动相应的读写电路。
控制器根据CPU给出的读或写命令,控制被选中的存储单元读出或写入。
2.2.3控制器
CPU的硬件完成的是读取指令,分析指令后产生相应的控制信号,用于指令的执行完成。
对指令的读取和译码分析就是控制器的功能。
控制器组成如下:
(1)指令计数器:
存放要执行的下一条指令的地址。
(2)指令寄存器:
存放现行指令。
(3)指令译码器:
对指令操作码进行分析解释,产生相应的控制信号给操作信号形成部件。
(4)脉冲源及启停控制电路:
脉冲源产生一定频率的脉冲信号,作为整个机器的时钟脉冲,启停线路可以开放或封锁时钟脉冲,控制时序信号的发生于停止,实现对机器的启动和停机。
(5)时序信号产生部件:
以时钟脉冲为基础,具体产生不同指令对应的周期、节拍、工作脉冲等时序信号。
(6)操作控制信号形成部件:
综合时序信号、指令译码信息、被控功能部件反馈的状态条件信号等,形成不同指令所需要的操作控制信号序列。
(7)中断机构:
对异常情况和外来请求处理。
(8)总线控制逻辑:
对总线信息传输控制。
(9)操作控制信号形成部件产生指令所需要的操作控制信号序列,用以控制计算机各部分的操作,它是整个控制的核心。
该部件的组成可用微程序方式,也可用组合逻辑方式或可编程逻辑阵列PLA方式。
微程序控制方式的基本思想是把机器指令的每一操作控制步编成一条微指令。
微指令的格式可分为水平型微指令和垂直型微指令。
微指令的每一位代表一个微命令,也即代表了操作控制信号。
微指令序列称为微程序,每一条机器指令对应一段微程序。
计算机指令系统所对应的所有的微程序存放在微程序存储器中。
每条微指令具有唯一的微地址,执行微程序时,采用微指令地址生成技术产生下一条微指令的地址。
第3章系统设计与实现
3.1模型机结构
运算器ALU由U7-U10四片74LS181构成,暂存器1由U3、U4两片74LS237构成,暂存器2由U5-U6两片74LS237构成。
微控器部分控存由U13-U15三片2816构成。
除此之外,CPU的其它部分都由EP1K10集成(其原理见系统介绍部分)。
存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00H-FFH。
输出设备有底板上的四个LED数码管及其译码器、驱动电路构成,当D-G和W/R均为低电平时将数据总线的数据送入数码管显示。
在开关方式下,输入设备由16位电平开关及两个三态缓冲芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。
在键盘方式或联机方式下,数据可由键盘或上位机输入,然后由监控程序直接送上数据总线,因而外加的数据输入电路可因不用。
3.2程序设计原理
3.2.1数据格式及指令格式
本模型机规定数据采用整数表示,字长为16位。
指令格式可设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。
1.算术逻辑指令
设计九条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:
表3-1算术逻辑指令格式
7 6 5 4
3 2
1 0
OP-CODE
addr
RD
其中,OP-CODE为操作码,RS为源寄存器,RD为目的寄存器,并规定如表3.2所示:
表3-2寄存器选择定义
RS或RD
选定的寄存器
00
01
10
R0
R1
R2
2.访问指令及转移指令
模型机设计两条访问指令,即存数、取数,转移指令,无条件转移(JMP)、指令格式如下:
表3-3访问、转移指令格式
76
54
32
10
00
M
OP-CODE
RD
D
其中,OP-CODE为操作码,rd为目的寄存器地址。
D为位移量,M为寻址模式,其定义如下:
表3-4寻址模式定义
寻址模式M
有效地址E
说 明
00
01
10
E=D
E=(D)
E=(PC)+D
立即数寻址
直接寻址
间接寻址
3. I/O指令
输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:
表3-5输入输出指令格式
7 6 5 4
3 2
1 0
OP-CODE
addr
RD
其中,addr=01时,选中输入设备,addr=10时,选中输出设备。
3.2.2指令系统
表3-6列出各条指令的格式、汇编符号和指令功能。
表3-6指令格式、汇编符号和指令功能
汇编符号
指令格式
功能
MOVrd,rs
ADDrd,rs
SUBrd,rs
INCrd
ANDrd,rs
NOTrd
RORrd
ROLrd
1000rsrd
1001rsrd
1010rsrd
1011rdrd
1100rsrd
1101rdrd
1110rdrd
1111rdrd
rs-→rd
rs+rd→rd
rd-rs→rd
rd+1→rd
rsrd→rd
rd→rd
rd
rd
MOV[D],rd
MOVrd,[D]
001000rd
D
001001rd
D
rd→[D]
[D]→rd
JMPD
MOVrd,D
00001000
D
000010rd
D
D→PC
D→rd
INrd,KIN
OUTDISP,rd
010010rd
010001rd
KIN→rd
Rd→DISP
rd或rs00选择寄存器Ax01选择寄存器BX10选择寄存器CX
3.2.3微指令设计
表3-7列出了本次实验所使用的微指令集
微地址(八进制)
微地址(二进制)
微代码(十六进制)
00
000000
007F88
01
000001
005B42
02
000010
016FFD
06
000110
015FE5
07
000111
015FE5
10
001000
005B4A
11
001001
005B4C
12
001010
014FFB
13
001011
007FC1
14
001100
01CFFC
20
010000
005B65
22
010010
005B47
23
010011
005B46
24
010100
007F15
25
010101
02F5C1
27
010111
018FC1
30
011000
0001C1
31
011001
0041EA
32
011010
0041EC
33
011011
0041F2
34
011000
0041F3
35
011101
0041F6
36
011110
3071F7
37
011111
3001F9
40
100000
0379C1
41
100001
010FC1
42
100010
011F41
45
100101
007F20
52
101010
0029EB
53
101011
9403C1
54
101100
0029ED
55
101101
3003C1
62
110010
0003C1
63
110011
0025F5
65
110101
B803C1
66
110110
0C03C1
67
110111
207DF8
70
111000
000DC1
71
111001
107DFA
72
111010
000DC1
73
111011
06F3C8
74
111100
FF73C9
75
111101
016E10
3.3机器指令设计
地址(十六进制)
机器指令(十六进制)
助记符
说明
00H
01H
02H
03H
04H
05H
06H
07H
08H
09H
0AH
0BH
0CH
0DH
0EH
0FH
10H
11H
12H
13H
14H
15H
0048H
0049H
0094H
00F0H
0082H
0046H
00D0H
0082H
0046H
0049H
0094H
0082H
0046H
00D0H
0082H
0046H
00E0H
00E0H
0082H
0046H
0008H
0000H
INAx,KIN
INBX,KIN
ADDAX,BX
ROLAX
MOVCx,Ax
OUTDISP,CxNOTAX
MOVCx,Ax
OUTDISP,Cx
INBX,KIN
ADDAX,BX
MOVCx,Ax
OUTDISP,Cx
NOTAX
MOVCx,Ax
OUTDISP,Cx
RORAX
RORAX
MOVCx,Ax
OUTDISP,Cx
JMP0000H
输入Ax
输入Bx
AX+BX→AX
AX循环左移一位
Ax→Cx
Cx→DISP
Not(AX)→AX
Ax→Cx
Cx→DISP
输入Bx
AX+BX→AX
Ax→Cx
Cx→DISP
Not(AX)→AX
Ax→Cx
Cx→DISP
AX循环右移一位
AX循环右移一位
Ax→Cx
Cx→DISP
0000H→PC
3.4联机实验
3.4.1实验流程
3.4.2实验连线
图3-1实验连线示意图
3.4.3实验步骤
(1)按照实验指导说明书连接硬件系统;
(2)启动实验软件,打开实验课题菜单,选中实验课题并打开参数对话窗口;
(3)微指令操作:
①写:
在编辑框中打开实验指导书中的微指令程序,将实验箱上的K4K3K2K1拨至“0010”写状态,然后按"W"按钮,微程序写入控制存储器电路,结果如图3-2所示。
图3-2写微指令
②读:
将实验箱上的K4K3K2K1拨至“0100”读状态,在“读出微地址”栏中填入两位八进制地址,按“R”按钮,则相应的微代码显示在“读出微代码”栏中,如图3-3所示。
图3-3读取微指令
③保存:
按“保存”按钮,微程序代码保存在一给定文件(*.MSM)中。
④打开:
按“打开”按钮,打开已有的微程序文件,并显示在编辑框中。
(4)机器指令操作:
①写:
在编辑框中打开自己预先编辑好的程序zcc.asm,将实验箱上的K4K3K2K1拨至“0101”运行状态,拨动“CLR”开关对地址和微地址清零,然后按“W”按钮,机器指令写入存储器电路;(注:
对于8位机,十六进制代码为2位;对于16位机,十六进制代码可以是2位,也可以是4位。
),结果如图3-4所示。
图3-4写机器指令
②读:
将实验箱上的K4K3K2K1拨至“0101”运行状态,在“读出指令地址”栏中填入两位十六进制地址,拨动“CLR”开关对地址和微地址清零,然后按“读出”按钮,结果如图3-5所示。
图3-5读机器指令
③保存:
按“保存”按钮,机器指令程序保存在一给定文件(*.ASM)中。
④打开:
按“打开”按钮,打开已有的机器指令程序文件,并显示在编辑框中。
⑤单步:
在运行状态下运行程序前,先拨动“CLR”开关对地址和微地址清零,然后每按一次“单步”按钮,执行一条微指令。
可从实验箱的指示灯和显示LED观察单步运行的结果。
⑥连续:
在连续运行程序前,先拨动“CLR”开关对地址和微地址清零,然后按“连续”按钮,可连续执行程序。
可从实验箱的指示灯和显示LED观察连续运行的结果。
⑦程序中间会要求输入数据:
图3-6输入第一个数据
图3-7输入第二个数据
图3-8输入第三个数据
3.4.3实验测试
本次实验设计的机器指令实现的功能为:
/4
输入数据:
1、1、2;
中间结果输出:
2(1+1)=4;
=FFFB;FFFB+2=FFFD;
=2;
最终结果输出:
2/4=0
总 结
通过本次课程设计,了解了微程序控制器的组成、微程序控制器的原理,学会设计简单的微程序,熟悉了基本电路及其功能。
此次课程设计最关键的步骤是连接实验电路图,因为我在课设开始时,通过实验指导书对微程序控制电路进行了详细的分析与学习,所以在以后的实验中连线比较顺利。
课程设计的最初阶段我们先将实验指导书上的实验进行了反复的验证,确定实验箱以及连线没有问题后开始进行设计。
在设计程序初始阶段,编写机器指令时,我们用到了多种复杂运算,例如:
与、减等操作,但经过大量的实践,发现结果都不正确,与其他小组进行讨论,结果都是不正确,为了保证课程设计能够按时完成,我们又改变了设计方案,将那些不出正确结果的运算删减掉,设计了这个相对简单的程序。
经过多组数据的验证,证明程序正确之后,找老师验收了。
但对于那些没解决的问题,我们不会放任不管,在今后的学习中会一一解决。
总的来说,本次课程设计中,我不但理解了模型机的原理,同时了解了许多实验外的东西,对我以后的学习很有帮助。
不但这样,我还与同组的同学一块研究,一块开发增进了我们之间的友谊。
因此说:
本次课程设计是成功的。
课设过程中我们验证了对微程序控制器的实现过程,在实验过程中,我们亲自动手参与实验,在出现问题解决问题的过程中我们学到了更多关于实践的东西,使我们在课上学到的理论知识在课设中得到了更好的验证,做到理论与实践相结合。
这次课程设计对提高我们的实践能力有很大的帮助。
致谢
通过此课程设计充分的利用了《计算机组织与系统结构》中所学的知识,在这个过程中不仅让我更多的学到了专业知识明白了其中许多原理以及理论上的知识,而且锻炼了我的分析问题、解决问题的能力,更重要的是锻炼了我的实际动手的能力。
但给我最深的感触就是合作的力量,由于本次课程设计对于细心程度要求比较高而且要两个人配合完成整个实验的操作,所以两个人的合作显得尤为重要。
在此我要感谢我的同组人在课程设计阶段对我的监督和帮助,也感谢老师对我们的悉心指导和无私帮助。
参考资料
1.《EL-JY-II型计算机组成原理实验系统(16位)实验指导书》
2.《计算机组织与系统结构》中国水利水电出版社季福坤荆淑霞
指导教师评语及设计成绩
评语
课程设计成绩:
指导教师:
日期:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北华航天工业学院 计算机组成原理课设报告 华航 天工 学院 计算机 组成 原理 报告