广东海洋大学计算机组成原理课程设计基本模型机的设计与实现分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机组成与结构》课程实习基本模型机的设计与实现
系别:信息学院
班级:计科1141
指导教师:刘桃丽
基本模型机的设计与实现
一、设计要求
1.1、分组设计一台基本模型机,并在模型机上运行一个简单的程序。每组2-3人,要求各组的指令系统不同。
1.2、根据设计的图纸,在验台上进行组装,并调试成功。
1.3、在组装调试成功的基础上,整理出设计图纸和其他文件,包括:
(1)总框图(数据通路图)
(2)微程序流程图
(3)微指令格式
(4)微程序代码表
(5)调试小结
二、课程实习使用的实验设备
2.1 实验设备
TEC-9计算机组成原理教学实验系统一台(含74181算术运算器ALU、74374寄存器堆R0、74161程序计数器、74273地址寄存器AR、74273指令寄存器IR 等),排线若干。
2.3 系统需求分析
一台计算机所能执行的各种指令集合称为指令系统或指令集。一台特定的计算机只能执行自己指令系统中的指令。因此,指令系统就是计算机的机器语言。指令系统表征着计算机的基本功能和使用属性,它是计算机系统设计中的核心问题。指令系统的设计主要括指令功能、操作类型的设计,寻址方式和指令格式的设计。计算机的性能与它所设置的指令系统有很大的关系,指令系统反映了计算机的主要属性,而指令系统的设置又与机器的硬件结构密切相关。指令是计算机执行某种操作的命令,而指令系统是一台计算机中所有机器指令的集合。通常性能较好的计算机都设置有功能齐全、通用性强、指令丰富的指令系统,而指令功能的实现需要复杂的硬件结构来支持。
随着社会科技的发展,计算机被应用到各行各业,人们步入自动化、智能化的生活阶段。本次课程设计课题是基本模型机的设计与实现,它正体现了这一点。利用CPU与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,硬件设备自拟,编写指令的应用程序,用微程序控制器实现了一系列的指令功能,最终达到将理论与实践相联系。本次设计完成了各指令的格式以
及编码的设计,实现了各机器指令微代码,形成具有一定功能的完整的应用程序。部件实验过程中,各部件单元的控制信号是人为模拟产生的,本课程设计将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能,通过设计流程图,编写机器指令,微指令和控制信号程序。首先向存储器(RAM)中装入数据和程序,然后检查写入是否正确,启动程序执行。另外,还需设计三个控制台操作微程序:存储器读操作(READ),存储器写操作(WRITE),运行程序(RUN)。以上各微指令设计完毕后,连接线路在TEC-9计算机组成原理教学实验箱运行程序,并将实验结果显示输出。
2.4 功能分析
该系统实现的功能是对输入的数据可以和内存中的数据进行连续的加、减及循环左移运算,并对其结果进行存储,显示等功能,从而得到一个简易的复杂模型机所实现的功能。
2.5 模块功能
IN 为单元字长(8位),含义是将数据开关8位数据输入到RO寄存器 ADD 为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相加,结果放在R0。
STA 为双字长指令。含义是将R0中的内容存储到以第二字A为地址的内存单元中。
AND 为双字长指令。第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相与,结果放在R0。
SUB 为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相减,结果放在R0。
NOT 为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容求反,把结果放在R0中。
JMP 为双字长指令,执行该指令时,程序无条件转移到第二字所指定的内存单元地址。
三、课程实习步骤
3.1 设计目的
综合运用所学过的计算机原理知识,在理解计算机各功能部件工作原理上,进一步加深计算机系统各模块间相互关系的认识和整机的概念,将微程序控制器模块、运算器模块同存储器模块联机,组成一台基本模型计算机。用微程序控制器模型机的数据桐庐,通过在够早的模型机上运行机器指令组成的简单程序,掌握机器指令与微指令的关系,建立机器的整机概念。
3.2 设计内容
通过自己设计微指令,同时设计了7条机器指令:IN(输入)、ADD(相
加)、AND(逻辑与)、STA(存数)、SUB(相减)、NOT(取反)、JMP(无条件转移),然后输入数据来验证这些操作。
3.3 基本原理
A.微程序控制的基本思想:
1. 若干微命令编制成一条微指令,控制实现一步操作;
2. 若干微指令组成一段微程序,解释执行一条机器指令;
3. 微程序事先存放在控制存储器中,执行机器指令时再取出。
B.基本组成:控制存储器,微指令寄存器,微地址寄存器,地址转移逻辑。
控制存储器(CM):用来存放实现全部指令系统的微程序,位于CPU中。它
是一种只读型存储器,要求速度快,读出周期短。
微指令寄存器:存放当前由控制存储器读出的一条微指令信息,分为微地址寄存器和微命令寄存器两个部分。其中微地址寄存器决定
将要访问的下一条微指令的地址,微命令寄存器则保存一条
微指令的操作控制字段和判别测试字段(P)的信息。
地址转移逻辑:自动完成修改微地址的任务。
微程序控制器:微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器。
C.微程序控制计算机的工作过程:
下面通过计算机启动、执行程序直到停机的过程,来说明微程序是如何控制计算机工作的:
计算机加电以后,首先由复位信号(Reset)将开机后执行的第一条指令的地址送入PC内,同时将一条"取指"微指令送入微指令寄存器中,并将其他一些有关的状态位或寄存器置于初始状态。当电压达到稳定值后,自动启动计算机,产生节拍电位和工作脉冲。为保证计算机正常工作,电路必须保证开机后第一个机器周期信号的完整性,在该CPU周期末,产生开机后第一个工作脉冲。然后计算机开始执行程序,不断地取出指令、执行指令。
程序可以存放在固定存储器中,也可以利用固化在只读存储器(ROM)中的一小段引导程序,将要执行的程序和数据从外部设备调入主存。实现各条指令的微程序是存放在微程序控制器中的。当前正在执行的微指令从微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和数据的传送,并进行相应的处理。当遇到停机指令或外来停机命令后,应该待当