100401001房维林要点Word格式.docx
《100401001房维林要点Word格式.docx》由会员分享,可在线阅读,更多相关《100401001房维林要点Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
日月
年指
轨*:
»
:
宀"
成质绩签时文成生平论答总学
第1章设计方案1
1.1引言1
1.2总体方案论述1
第2章一台模型计算机的硬件设计4
2.1系统整体设计方案4
2.2数据通路的设计4
2.3存储器的设计5
2.4微程序控制器的设计7
2.5模型机的设计与调试8
第3章微程序设计10
3.1微程序功能说明10
3.2微程序流程图10
3.3微程序代码的设计与测试11
第4章课程设计总结12
参考文献13.
第1章设计方案
1.1引言
本次课设题目为:
一台模型计算机设计与测试一一加法指令。
课设设计目的是:
将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机;
用微程序控制器控制模型机数据通路;
通过CPU!
行九条机器指令(排除中断指令)组成的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。
本次课程设计可以使用计算机组成原理实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等,将几个模块组合成为一台简单的计算机。
在前面的实验中,实验者本身作为控制器,完成数据通路的控制。
而在本次课程设计中,数据通路的控制将由微程序控制器来完成。
CPU从内存中取出一条机器指令到执
行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,及一条机器指令对应一个微程序。
1.2总体方案论述
1.利用机器指令系统编制简单程序,要求至少使用其中的五条指令,对自己编制的简单程序进行译码,手工汇编成十六进制机器代码。
2.参考组成原理实验的电路图完成连线,控制器是控制部件,数据通路是执行部件,书序产生器是时序部件。
包括控制台、时序部分、数据通路和微程序控制器之间的连接。
其中,为把操作数传送通用寄存器组RF,数据通路上的RS1RS0RD1RDO应分别与IR3至IRO连接,WR1WRO也应接到IRO、IR1上。
3•将上述任务1中的程序机器代码存入内存中,并根据程序的需要设置通用寄存器组及内存相关单元的数据。
用数码开关SW—SW(设置通用寄存器的数据,再设置内存数据。
4.以单拍(DP方式执行一遍程序,直到返回主程序为止。
列表记录通用寄存器堆RF
中寄存器的数据,在设置为内存数据,以RAM中的数据,与理论分析值作对比。
单拍方式执行时注意观察微地址指示灯、IR/DBUS指示灯、AR2/AR1指示灯和判断字段指示灯的值,以跟踪程序中取指令和执行指令的详细过程。
6.以单指(DZ方式重新执行一遍程序,注意观察IR/DBUS指示灯AR2/AR1指示灯的值。
执行结束后,记录RF中四个寄存器的数据,以及RAM中的数据,与理论分析值作对
比。
7.以连续方式(DBDPDZ都设为0)再执行一遍程序。
这种情况相当于计算机正常运行程序。
由于程序中有停机指令STP程序执行到该指令时自动停机。
执行结束后,记录RF中四个寄存器的数据,以及RAM中的数据,与理论分析值作对比。
8.
电路组成系统由数据通路、微程序控制器组成其系统组成框图如图1.1所示。
图1-1系统总体框图
数据通路连接了各个执行部件,通过数据通路传递地址、传递数据,将它们送往执行
部件实现相关的一些操作,这些地址和数据时怎样在数据通路里传输而不发生冲突,是因
为控存里相应微程序的控制。
各部分功能电路的作用。
运算器:
执行数值数据的算术加减乘除等运算,执行逻辑数据的与或非等逻辑运算,由一个被称为ALU的线路完成;
暂时存放参加运算的数据和中间结果,由多个通用寄存器来承担;
运算器通常也是数据传输的通路。
微程序控制器:
产生数据通路操作所需的控制信号。
数据通路:
数据在功能部件之间传送的路径称为数据通路。
运算器与各寄存器之间的
传送路径就是中央处理器内部数据通路。
“数据通路”描述了信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器,都要加以控制。
建立数据通路的
任务,是由“操作控制部件”来完成。
数据通路的功能是实现CPU内部的运算器和寄存器以及寄存器之间的数据交换。
存储器:
具有记忆功能,用来保存信息,如数据,指令和运算结果等等。
指令寄存器:
用来暂存指令。
通用寄存器:
是那些你可以根据自己的意愿使用的寄存器,修改他们的值通常不会对
计算机的运行造成很大的影响。
通用寄存器最多的用途是计算。
第2章一台模型计算机的硬件设计
2.1系统整体设计方案
总体设计方案中首先要确定整体控制系统的结构和类型。
另外总体设计方案中还要包
括硬件设计与软件设计两大部分,具体设计时一般采用“黑箱”设计方法,就是根据控制要求,将完成控制任务所需的各功能单元、模块以及控制对象,采用方块图表示,从而形成系统的总体框图。
总体设计中还应包括控制系统对现场工艺的要求,比如为了安装某个关键的现场仪表,需要改装某根管道;
为了控制方案的实施,需要工艺人员的配合,增加
现场气源等。
总之,总体方案是整个控制系统设计的关键,要实现一个好的设计必然离不开对生产工艺的深入了解以及工艺技术人员的支持与配合。
1.硬件总体方案设计
计算机控制系统的硬件总体设计主要包括以下方面的内容:
系统的构成方式;
现场设备及自动化仪表的选择;
人一机接口方式;
系统的控制机箱结构设计;
抗干扰措施等。
2.软件总体方案设计
软件总体方案设计的内容主要是确定软件平台、软件结构、任务分解,建立系统的数学模型、控制策略和算法的实现等。
3.总体方案文档
其内容包括:
(1)系统的主要功能、技术指标、原理性方框图及文字说明。
(2)
控制策略与算法。
(3)系统的硬件结构与配置,主要的软件功能、结构、平台及实现框图。
(4)方案的比较与选择。
(5)抗干扰措施与可靠性设计。
(6)机柜或机箱的结构与外形设计。
(7)经费和进度计划的安排。
(8)对现场条件的要求。
2.2数据通路的设计
1.运算器
运算器部件是计算机中进行数据加工的部件,其主要功能包括:
(1)执行数值数据的算术加减乘除等运算,执行逻辑数据的与或非等逻辑运算,由一个被称为ALU的线路完成。
(2)暂时存放参加运算的数据和中间结果,由多个通用寄存器来承担。
(3)运算器通常也是数据传输的通路。
表2-1
选择
操作
S2
S1
S0
A&
B
1
A(直通)
A+B
A-B
A(低4位)XB(低4位)
图2-1
2.3存储器的设计
(1)双端口存储器RAM
双端口存储器由一片IDT7132(U36及少量附加控制电路组成。
IDT7132是2048字节的双端口静态随机存储器,本机实际使用256字节。
IDT7132两个端口可同时进行读、
写操作。
在本机中,左端口的数据连线数据总线DBUS可进行读、写操作,右端口数据
和指令总线INS连接,输出到指令寄存器IR,作为只读端口使用。
存储器IDT7132有6个控制引脚:
CEL#,LRV,0EL1,CEF#,RRWOEF#。
CEL#,LRV,OEL1控制左端口读、写操作;
CEF#,RRWVOEF#控制右端口读、写操作。
CEL#为左端口选择引脚,低有效,为高时禁止左端口操作;
LRW为高时,左端口进行读操作,LRW为低时,左端口进行写操作;
OEF#为低时,将左端口读出的数据放到数据总线DBUShoCEF#,RR0OEF#
控制右端口读、写操作的方式与CEL#,LRVyOEF#控制左端口读、写操作的方式类似,不过右端口读出的数据放到指令总线上而不是数据总线上。
本机设计中,OEF#已固定接
地,RRWS定接高电平,CEF#由CEF反相产生。
当CE陰1时,右端口读出数据,并放到指令总线INS上;
当CE陰0时,禁止右端口操作。
左端口的OEL#由LRW经反相产生,不需单独控制。
当CEL#=0且LR得1时,左端口进行读操作;
当CEF#=0且LR得0时,在T3的上升沿开始进行写操作,将数据总线上的数据写入存储器。
(2)地址寄存器AR1和AR2
地址寄存器AR(U37)和AR2U27,U28)提供双端口存储器的地址。
AR1是1片GAL22V10具有加1功能,提供双端口存储器左端口的地址。
AR1从数据总线DBUS接收数据。
AR1的控制信号是LDAR1和AR1-INC当AR1-IN31时,在T4的上升沿,AR1的值加1;
当LDAR牡1时,在T4的上升沿,将数据总线DBUS勺数据打入地址寄存器AR1AR2由2片74HC298组成,有两个数据输入端,一个来自程序计数器PC,另一个来自数据总线DBUSAR2的控制信号是LDAR2WM3M3选择数据来源,当MA1时,选中数据总线DBUS当M3=0时,选中程序计数器PCLDAR2控制何时接收地址,当LDA陰1时,在T2的下降沿将选中的数据源上的数据打入AR2
(3)指令寄存器IR
指令寄存器IR是1片74HC374(U20)o它的数据端从双端口存储器接收数据(指令)。
当LDIR=1时,在T4的上升沿将来自双端口存储器的指令打入指令寄存器IR保存。
指令
的操作码部分送往控制器译码,产生各种所需的控制信号。
大多数情况下,指令的操作数部分应连到寄存器堆(用户自己连接),选择参与运算的寄存器。
在某些情况下,指令的操作数部分也参与新的PC的计算。
本实验系统设计了12条基本的机器指令,均为单字长(8位)指令。
指令功能及格式如表2所示。
表2中的X代表随意值;
RS1-RS0旨的是寄存器堆的B端口选择信号RS1,RSQRD1,RD0指的是寄存器堆的A端口选择信号RD1-RD0不过由于运算结果需写回,因此它也同时指WR1WR0用户需将它们对应连接。
另一点需说明的是,为了简化运算,
指令JCD中的D是一个4位的正数,用D3D2D1DO表示。
2.4微程序控制器的设计
控制器位于本实验体统的中上部,产生数据通路操作所需的控制信号。
出场时,提
供了一个微程序控制器,使用户能够进行基本的计算机组成原理实验。
在进行硬连线控制器实验,流水微程序控制器和流水硬连线控制器实验等课程设计时,用户可设计自己的控制器,部分或者全部代替出厂是提供的控制器。
1.机器指令格式
名称
助记符
功能
指令格式
R7R6R5R4
R3R2
R1R0
加法
ADDRdRs
Rd+Rs->
Rd
0000
RS1RS0
RD1RD0
存数
STARd[Rs]
Rd->
[Rs]
0100
取数
LDARd[Rs]
[Rs]->
0101
无条件转移指令
JMP[Rs]
Pc
1000
XX
条件转移
JCD
若C=1则
PC+D->
PC
1001
D3D2
D1D0
停机
STP
暂停运行
0110
中断返回
IRET
返回断点
1010
开中断
INTS
允许中断
1011
关中断
INTC
禁止中断
1100
表2-2
2.控制台指令格式
SWC
SWB
SWA
工作方式
PR启动程序
KRD读双端口存储器
KWE写双端口存储器
KLD加载寄存器存器堆
KRR读寄存器堆
表2-3
3•微程序控制器组成原理图
图2-2微程序控制器组成原理图
4•电路设计
在本次课程设计中,数据通路的控制将由微程序控制器来完成。
CPU从内存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。
2.5模型机的设计与调试
机器语言主程序
该系统以ADD指令为例,其指令的存储地址和机器代码如下:
地址
机器代码
OOH
ADDR1,R2
06H
1•对机器指令系统组成的简单程序进行译码。
2。
接线
1)时序发生器的输入TJI接控制存储器的输出TJ。
控制器的输入C接运算器ALU
的C.控制器的输入IR7、IR6、IR5、IR4、依次指令寄存器IR的输出IR7、IR6、IR5、IR4。
共6条线。
2)控制器的输出LDIR(CER、LDPC(LDR4)PC_ADDPC_INCM4LDIARLDAR1(LDAR2)AR1_INGM3LDERIAR_BUS#SW_BUS瑕S_BUS、ALU_BUSCE、LRWWRDLDDR1(LDDR2)M1(M2)S2、S1、S0依次与数据通路的对应信号连接。
3)指令寄存器IR的输出IR0接双端口寄存器堆的RD0WR0IR1接RD1WR1IR2接RSQIR3接RSt
合上电源。
按CLR按钮,使试验系统处于初始状态。
3.存程序机器代码,设置通用寄存器及内存相关单元的数据。
设置通用寄存器R2,R3的值。
1)令DP=0DB=QDZ=Q使实验系统处于连续运行状态。
令SWC=0SWB=1SWA=,1使试验系统处于寄存器加载工作方式KLD按CLR#按钮,使实验系统处于初始状态。
2)在SW7-SW上设置一个存储器地址。
该存储器地址0FFH供设置通用寄存器使用。
按一
次QD按钮,将0FFH写入AR0和AR1
3)在SW7-SW上设置11H,作为通用寄存器R2的寄存器号。
按一次QD按钮,则将11H写入IR。
4)在SW7-SW设置30H,作为R2的值。
按一次QD按钮,将30H写入IR指定的R2寄存
5)在SW7-SW上设置22H,作为通用寄存器R3的寄存器号。
6)在SW7-SW设置03H,作为R2的值。
按一次QD按钮,将03H写入IR指定的R3寄存
4.设置R2,R3结束,按CLR#按钮,使实验系统恢复到初始状态存程序机器代码。
1)令DP=0DB=0DZ=Q使实验系统处于连续运行状态。
令SWC=0SWB=1SWA=,使实验系统处于写双端口存储器工作方式KWE按CLR#按钮,使实验处于初始状态。
2)置SW7-SW为00H,按QD按钮,将00H写入AR1
3)置SW7-SW为10H,按QDK钮,将10H写入存储器10H单元。
AR1自动力卩1,变为11Ho
4)置SW7-SW为01H,按QDK钮,将01H写入存储器01H单元.AR1自动加一,变为02耳
5)按CLR#按钮,使实验系统恢复到初始状态。
4.单拍(DP)方式执行一边程序。
在单拍执行过程中,首先要随时监测AR2的值,以判定程序执行到何处,正在执行哪条指令•检测微地址指示灯和判断字段指示灯,对照微程序流程图,可以判断出微
指令的地址和正在进行的微操作。
5.指(DZ)方式执行一遍程序
6.续方式执行一遍程序
第3章微程序设计
3.1微程序功能说明
3.2微程序流程图
运行er程序径覇台」
pc-*1
-ID
01
图3-1加法指令微程序流程图
3.3微程序代码的设计与测试
当
刖微地址
T
J
M
L
D
R
W
CEL
#
A
U
BU
S
RS
IA
E
3
AR
IN
C
I
4
P
AD
N
P3P2
P1P0
A5A
A3A
2
A1A
00
000
1000
000111
07
0000
000101
05
0100
010000
10
111011
010
110100
34
001111
F
0010
图3-2加法指令微程序代码
第4章课程设计总结
《计算机组成原理》是一门实践性较强的计算机基础课程,在前一阶段的理论学习中,我初步的了解和学习到了与硬件有关的一些知识,但是,在学习过程中还是觉得很多的东西很抽象,似懂非懂的东西很多,这就源于在学习的过程中缺乏实践。
幸好参加了这次课程设计,课设的过程中出现了很多问题,例如试验指导书上给出了基本模型机设计与实现,其中用到了加法指令。
我们按照指导书把试验做出来了,但是不知道为什么是这样的。
然而,老师要求我们改变其中的指令实现不一样的功能。
正因为这些问题的出现,让我更加深刻的理解书本上所学习的理论知识,更重要的是,这次受益匪浅的课程设计让我在理论知识和动手操作中都得到了提高。
我和同伴分配到的课题是加法指令流程,我们按照课程设计指导书的要求与格式顺利的完成了这项任务。
但在实际操作中我们遇到了困难,以前在实验中,实验者本身作为“控制
器”完成数据通路的控制,而在本次课程设计中,数据通路的控制由微程序控制器来完成。
在老师和同学的帮助下,我们连接好了电路。
对我来说最耽误时间、考验耐心和细心的就是指令的存储和机器指令的输入,怎样按照我们先设计好的流程图将相应的地址的内容准确的告诉给实验箱。
因此在设计的过程中,我们不能疏忽一步,一步不注意就可能会导致问题。
比如根据实验接线图在接线的过程中,有的线不可以插反,插反的话会影响结果,特别要注意的就是两条线,那里很容易出错,我和同伴在连线的过程中就在将LDDR1
和LDDR2两条线插反了,在调试的过程中,总有问题,检查线路后才发现的;
在存储指令时,也很容易出现问题,因为在输入时微指令每位只有两种状态0和1,难免输入错误,
因此在输入的过程中,我们反复检查;
我们在单步运行时,一边看总线上的结果,一边看微地址,因此需要仔细观察,不能疏忽。
实践下来,我明白了耐心和细心原来是这样练出来的。
本次课程设计的过程中也有一些不成熟的地方,经过指导老师的帮助有了很大的改进,也有很多的地方是和同学探讨的结果,在此感谢指导老师和同学的帮助,我会在以后的学习与实践中继续努力提高自己。
参考文献
[1]俸远榛•计算机组成原理与汇编语言•北京:
电子工业出版社,2006
[2]王爱英.计算机组成与结构.北京:
清华大学出版社,1998
[3]白中英.计算机组成原理.北京:
科学出版社,2002年1月
[4]王成.计算机组成原理实验指导书与习题集•北京:
清华大学出版社,2000年6月
⑸朱家铿•计算机组成原理•沈阳:
东北大学出版社,2000年2月
⑹旷海兰•计算机组成原理学习指导训练•北京:
中国水利水电出版社,2004年3月
[7]张代远•计算机组成原理教程•北京:
清华大学出版社,2005年5月
[8]王健、王德君•计算机组成原理实验指导书•沈阳工程学院,2005
[9]蒋本珊•计算机组成原理•北京:
清华大学出版社,2004