计算机组成原理课程设计
- 格式:doc
- 大小:244.50 KB
- 文档页数:19
课程设计说明书计算机组成原理课程设计
院系:计算机科学与工程学院
专业班级:
学号:
学生姓名:
指导教师:
2014年12月26日
安徽理工大学课程设计(论文)任务书
2014年12月1日
安徽理工大学课程设计(论文)成绩评定表
摘要
计算机组成原理课程设计课题是基本模型机的设计与实现。利用CPU与简单模型机来实现计算机组成原理课程设计,编写指令的应用程序,用微程序控制器实现一系列的指令功能,最终达到将理论与实践相联系。本次设计完成了相关指令的格式以及编码的设计,实现了机器指令微代码,完成具有一定功能的程序。
本次课程设计的题目是输入一个16位的数,对其进行循环左移。通过设计流程图,编写机器指令,微指令和控制信号程序。首先向存储器中装入数据和程序,然后检查写入是否正确,启动程序执行。另外,还需设计微程序:本课程设计要求实现机器指令:MOVV(传送),RU(输入),HUO(逻辑或),JIA(加法运算),JIAC(带进位的加法),TZ(判断A寄存器里的内容是否为零),TIAO(跳转)。以上各微指令设计完毕后,用设计好的指令实现逻辑运算,连接线路在CPTH计算机组成原理教学实验箱运行程序,并将实验结果显示输出。
本次课程设计偏重于对计算机工作的原理和计算机微机的指令系统学习和深入的了解。对以后的学习打下一个好的基础。这一课题的实现不仅使我们对各种微指令有了熟练的掌握,更对以后的学习、工作中有深远的影响。
关键词:微指令,机器指令,循环左移
目录
1原理介绍 (1)
1.1 cpu功能与原理 (1)
1.2指令周期 (1)
1.3微程序控制 (1)
1.4微程序控制原理 (2)
1.5微程序控制器 (2)
2实验环境介绍 (3)
2.1设计背景分析 (3)
2.2设计目的与要求 (5)
3 系统设计 (6)
3.1.不带进位的循环左移 (6)
3.2机器指令集的编写与功能 (6)
3.3程序系统分析 (7)
3.4程序微指令分析 (8)
3.5实验结果 (10)
4 实验总结 (13)
4.1 设计体会 (13)
4.2 系统改进 (13)
5 参考文献 (14)
1原理介绍
1.1 cpu功能与原理
数据缓存寄存器(DR)数据缓存寄存器用来暂时存放ALU的运算结果,或由数据存储器读出的一个数据字,或来自外部接口的一个数据字。
指令寄存器(IR)指令寄存器用来保存当前正在执行的一条指令,当执行一条指令时,先把它从指令cache存储器读出,然后再传送至指令寄存器。
程序计数器(PC)为了保证程序能够连续的执行下去,CPU必须具有某些首段来确定下一条指令的地址。
数据地址寄存器(AR)数据地址寄存器用来保存当前CPU所访问的cache存储器单元的地址.通用寄存器(R0~R3)当算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。
状态字寄存器(PSW)状态字寄存器保存由算数指令和逻辑指令运算或测试结果建立的各种条件代码。
1.2指令周期
计算机所以能自动的工作,是因为CPU能从存放程序的内存里取出一条指令并执行这一条指令。例如MOV指令的指令周期,MOV是一条RR型指令,它需要两个CPU周期,其中一个是取指周期,一个是执行周期。
取指周期中完成三件事:从指存取出指令,对程序计数器加1,以便为取下条指令做好准备,对指令操作码进行译码或测码。
执行周期操作控制器送出控制信号到通用寄存器,操作控制器送出控制信号到ALU,指定ALU做传送工作,操作控制器送出控制信号,打开ALU输出三态门,操作控制信号送出控制信号,将DBUS上的数据打入到数据缓冲寄存器中,操作控制信号送出控制信号,将数据韩冲寄存器打入到目标寄存器中。
1.3微程序控制
微程序控制器同硬布线控制器相比较,具有规整性,灵活性,可维护性等一系列优点,在计算机系统中,微程序设计技术是利用软件方法来设计的一门技术。
微程序控制思想,就是仿照通常的解题程序方法,把操作控制信号编程所谓的微指
令,存放到一个只读存储器中,当机器运行时,有一条一条的读出这些微指令,从而产生全机所需要的各种操作控制信号,使相应的部件执行所规定的操作呢。由于数据通路的结构关系,微操作可分为相容的和互斥的两种:互斥的微操作,是指不能同时或不能在同一个节拍内并行执行的微操作。相容的微操作,是指能够同时或在同一个节拍内并行执行的微操作。系列微指令的有序集合就是微程序。
一段微程序对应一条机器指令。微地址:存放微指令的控制存储器的单元地址。
1.4微程序控制原理
控制存储器(UCM):这是微程序控制器的核心部件,用来存放微程序。其性能(包括容量、速度、可靠性等)与计算机的性能密切相关。
微指令寄存器(UIR):存放从UCM取出的正在执行的微指令,它的位数同微指令字长相等。
微地址形成部件:用来产生初始微地址和后继微地址,以保证微指令的连续执行。
微地址寄存器(UMAR) :它接受微地址形成部件送来的微地址,为下一步从μCM中读取微指令作准备。
1.5微程序控制器
模型机作为一个整体来工作的,所有的微程序控制信号由微程序存储器UM输出,而不是由开关输出,在进行试验之前,先用8芯电缆接J1和J2,是系统处于非手动状态,这样试验仪的监控系统会自动打开uM的输出允许,由软件控制程序实现单指令执行,单微指令执行等,设计微指令应当追求的目标,有利于缩短微指令的长度,有利于缩小CM的容量,有利于提高微程序的执行速度。
2实验环境介绍
2.1设计背景分析
2.1.1 模型机指令集分析
本次课程设计是在DJ-CPT816计算机组成原理实验仪和仿真软件上进行的。
该模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数,指令码的最低两位用来选择R0-R3寄存器。在微程序控制方式下,用指令码作为微地址来寻址微程序存储器,找到执行该指令的微程序。在本模型机中,一条指令最多分为四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入输出,选择运算器的运算功能,存储器的读写。
简言之,这次设计,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一条微程序,一条微程序又有若干微指令组成,一条微指令的功能由24位操作信号(即控制位)实现。
24位控制位分别介绍如下:
XRD:外部设备读信号,当给出个外设的地址后,输出此信号,从指定外设读数据。
EMWR:程序存储器EM写信号
EMRD:程序存储器EM读信号
PCOE:将程序计数器PC的值送到地址总线ABUS上
EMEN:将程序存储器EM与数据总线DBUS接通,有EMWR和EMRD决定是将DBUS数据写入EM中,还是从EM读出数据到DBUS
IREN:将程序存储器EM独处的数据打入指令寄存器IR和微指令计数器uPC
EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。
ELP:PC打入允许,与指令寄存器的IR2.,IR3位结合,控制程序跳转。
MAREN:将数据总线DBUS上数据打入地址寄存器MAR
MAROE:将地址寄存器MAR的值送到地址总线ABUS上
OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里
STEN:将数据总线DBUS上数据存到堆栈寄存器里
RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定
RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定