组成原理课程设计
网上找到一个好东西,不知道是那一届前辈的,转载下。。
。
原网址http://hi.baidu.com/zhanggan25/blog/item/55d10b953ca8a6087af480cf.html
中国计量学院
计算机组成原理课程实践(报告)
题目: 基本模型机的设计与设计
一、设计目的
通过对一个简单模型机的设计与实现
,对计算机的基本组成、部件的设计、部件间的
连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。
在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。
为其定义5条机器指令,并编写相应的微程序,上机调试掌握整机概念。
二、采用设备
Dais-CMH+/CMH 计算器组成原理教学实验系统一台,实验用扁平线、导线若干,电脑一台
三、设计内容
第一阶段:
1.熟悉系统数据通路,包括原理框图与实验箱布置
2.根据数据通路实现实验连线
3.熟悉仿真软件的使用
4.熟悉仿真软件支持的程序与微程序格式
第二阶段:
1.根据系统流程图,编写程序与微程序并调试通过
2.记录运行情况
第三阶段:
1.将ADD指令改为减操作并调试通过
2.验收,完成相应的实验报告
四、设计原理
部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而本次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前三位为操作码):
(2) 程序
P01 40 ; ADD R0 , 09H
P02 09
P03 60 ; STA 0BH , R0
P04 0B
P05 80 ; OUT BUS , 0AH
P06 0A
P07 A0 ; JMP 00H
P08 00
P09 55 ; DATA
P0A AA ; DATA
(3) 微程序
微程序写法:
根据基本模型机系统数据通路框图以及微指令流程图,将每条微指令代码化,译成二进制代码表,在译成二进制代码时要根据基本模型机系统通路图来定哪些开关有效,根据是否有效置1或0对应写入微指令格式中,并将二进制代码表转换成十六进制格式文件。
M01 20 00 60 40
M02 00 80 10 12
M03 00 80 40 20
M04 00 80 08 A0
M05 A0 00 04 60
M06 40 29 02 80
M07 00 80 40 68
M08 00 00 00 80
M09 00 00 02 81
M0A 20 00 60 C0
M0B 20 00 60 E0
M0C 20 00 60 C8
M0D 20 00 60 A8
M0E 00 00 00 80
M0F 00 00 00 80
M10 00 40 20 89
M11 20 00 60 48
M12 00 80 01 89
M13 00 80 40 28
M14 03 80 00 80
M15 00 C0 20 80
M16 A0 80 01 80
M17 00 00 00 80
M18 00 00 00 80
。
。
。
M3F 00 00 00 80
(4) 实现情况及记录:
首先,将实验箱与电脑连接,然后打开Dais-CMH+ 计算机组成原理教学实验系统,然后输入以上的程序和微程序,按装载,如果装载成功后,通过按微单步,一步步实现微程序,观察每一步数据的变化.
实验中,PC是程序计数器,用来计程序运行的步数
执行记录情况:
执行如下操作,首先我装入的数据为03
RAMDB=20->IR=20
PC=02->AR=01
IN=03->RO=03
RAMDB=40->IR=40
PC=03->AR=02
RAMDB=00->AR=09
RAMDB=00->DR2=00
PC=03->DR1=03
ALU=03->RO=03
PC=04->AR=03
RAMDB=60->IR=60
PC=05->AR=04
RAMDB=00->AR=0B
RO=03->RAMDB=03
PC=06->AR=05
RAMDB=80->IR=80
PC=07->AR=06
RAMDB=03->AR=0B
RAMDB=03->OUT=03
PC=08->AR=07
RAMDB=A0->IR=A0
PC=09->AR=08
RAMDB=00->PC=00
六、设计总结
通过紧张有序的课程设计实践,不仅让我对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与模型机的硬件结构和怎么去设计微程序等过程有了进一步的了解, 也让我觉得自己的动手能力有了很大的提高;自信心也增强了,在课程设计中自己动脑子解决遇到的问题,书本上的知识有了用武之地,这巩固和深化了自己的知识结构。
起初第一次讲解时,由于对计算机总体结构不怎么熟悉、没认真预习、思考不够认真、对书本的知识不够扎实以及前几次实验都忘得差不多了,所以不知道从哪里开始着手,直到那天课结束也是一脸的茫然,不知道这次课程设计到底在做什么,整体上没有一点把握,心想这次课程设计肯定惨了。但在第二次讲解前,我对以前做过的实验重新看了一遍,在设计
通过这次实践,我相信,只要自己在每一次实践中都能仔细思考,课程设计其实都不会很难,关键在于自己能不能认真思考,能不能亲自动手做实验,而不是想着其他人的劳动果实,其次你还要多操作,只有多操作才能从中发现问题,才能及
浙公网安备 33010602011771号