文档介绍:计算机组成原理课程设计说明书
题目:基于微程序控制器(主控存分开)
的简单计算机设计与实现
姓名:靳淑蕉
学号:U200915337
班级:信息安全0903
同组者:潘莹
实验台号:49
完成日期:2012年1月19日
指导老师:王晓兰、周建国、秦磊华
华中科技大学计算机科学与技术学院
一. 实验题目 1
二. 实验目的 1
三. 实验要求 1
四. 实验流程 2
五. 设计方案 2
1. 芯片选择 2
2. 设计原理图 4
数据通路 4
增加回存功能 5
增加机器指令部分 6
增加微指令部分 8
3. 设计微程序控点 10
4. 微指令设计 12
取指公操作 13
取数微指令 14
加法微指令 14
回存微指令 14
停机微指令 15
5. 指令周期流程图 15
取指公操作: 15
取数微指令 15
加法运算指令 16
乘2微指令 17
回存微指令 18
6. 时序设计 18
7. 时序图 20
8. 设计接线图 21
六. 检查过程 23
七. 布线调试时遇到的问题及解决办法 23
八. 实现心得体会 26
九. 参考文献 27
实验题目
基于微程序控制方式的主控存分开的简单计算机系统的设计与实现
实验目的
加深对冯诺依曼体系结构计算机组成及其各部分功能的理解,进一步建立整机的概念。
加深对计算机数据通路的理解,加深对计算机指令系统、微指令的认识,并通过时序控制,完整地设计一个简单的计算机系统。
锻炼学生初步的计算机系统分析和设计能力。
锻炼学生分析、定位和排除故障的能力。
实验要求
利用各单元实验和课堂上所学知识,选择适当的芯片,设计简单的计算机系统。
在完成数据通路设计并验证数据通路功能的基础上增加指令和微指令控制的功能。
以自己所设计的计算机系统为硬件环境,设计出完成指定功能的各指令周期流程图,并设计出相应的微命令。
以手动方式产生各指令执行过程中所需要的微命令,控制指令的执行。
设计控存,并将各指令的微程序存放在CM中,经过适当的时序控制,通过微程序自动控制指令的执行。
实验流程
在课程设计开始前,我们检查了各个芯片是否能正常工作。按照实验指导书上面所给定的各个芯片的功能进行测试,在确定所用的芯片都是好的之后再开始进行接下来的工作。
在整个课程设计的过程中,我们依照的是课程设计指导书上面的三步走方法:
第一步:打通数据通路,可向存储器6116中存数,向寄存器中打入,用手动实现算术或逻辑运算。
第二步:由PC寻址加载机器指令,完成指定算术或逻辑运算;并将结果存入存储器中。
第三步:由机器指令的操作码部分加载微指令,由机器指令的地址码部分加载操作数,同时,由它加载的各个微信号,进行运算完成一条机器指令的执行。
设计方案
芯片选择
在这次的课程设计中,我们选择的芯片类型及数量如下:
74LS244 2片
74LS373 5片
181 2片
74LS161 1片
74LS157 1片
74LS395 1片
6116 1片
2816 2片
关于各个芯片的选择理由如下:
74LS244芯片:
该芯片具有“选通”和“高阻”两种状态,适合用来作为数据输入或是流通时的闸门,所以我们采用了两片244。一片用来向6116中存入机器指令,另外一片用来控制向6116中回存运算的结果。
73LS373芯片:
该芯片又称八D锁存器,从它的功能表中也可以看出它具有“选通”和“锁存在已建立的数据电平”两种状态,所以该芯片适合用来作为寄存器。因此我们采用了5片373芯片,其中一片寄存181的运算结果并输出显示,一片作为数据累加器AC,一片作为IR寄存机器指令,剩下两片作为μIR存放从控存中读出的微指令。
181芯片:
181芯片是进行算术或逻辑运算必不可少的芯片,而运算的数据是存放在6116中的,每个单元的数据有8位,因此我们需要两片181并联实现8位数据的运算。
74LS161芯片:
该芯片又称同步四位计数器,从它的名字就可以看出它具有计数的功能,同时我们在实现中还利用到了它的清零功能。161芯片是用来作为PC使用的,通过它的4位输出一共可以选择到主存6116中的16个地址单元。
74LS157芯片:
该芯片又称2选1数据选择器,一共有两个输入数据流,每一个数据流是4位的,通过使能端S可以选通其中任意一个数据流,因此该芯片非常适合用来作为主存6116的地址选择控制。当需要机器指令的时候,157选择PC送来的地址;当需要数据的时候157选择IR的低四位送来的数据地址。
74L