中国计量学院计算机组成原理课程实践(报告),题目:复杂模型机的设计与实现按位加操作,二级学院,专业,班级,姓名,学号,指导教师,2011 年 12 月 22 日,一、实验目的,1、在掌握部件单元电路实验的基础上,2、为其定义5条机器指令,二、实验设备,Dais-CMH+/CMH 计算器组成原理教学实验系统一台,部件实验过程中,本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT (输出)、JMP(无条件转移),============================================================== 助记符机器指令码说明,-------------------------------------------------------------- IN R0 0010 0000 数据开关内容状态→R0,ADD R0,STA [addr],OUT [addr],JMP addr 1010 0000 XXXXXXXX addr→PC,==============================================================,其中IN为单字节(8位),根据以上要求设计数据通路框图,8-7-3,当全部微程序设计完毕后,下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令,通过节拍脉冲T4的控制以便识别所要求的操作,译码强置微控器单元的微地址,本系统有两种外部I/O设备,图7-10-1基本模型机数据通路框图,四、实验步骤,1、按照实验要求在实验箱上把线路连接好,2、在Dais-CMH+/CMH上装载mxj1,3、先设计自己的宏观指令,IN R0,ADD R0,RLC R0 ,STA 0FH,OUT 0FH,JMP 00H ,4、根据自己设计的指令,运行微程序,01,pc->,Pc+1,02,RAM->,BUS->,08,P(1),5、根据微程序流程图写出微指令,P01 40 09 ,P09 55 寄存器中内容为55 P0A AA,------------以下为数据空间------------,M00 00 00 00 80 程序开始 M01 20 00 60 40 PC 赋值给AR 自加1 M02 00 80 10 12 数据总线内容赋值给IR,NOP SW->,PC->,PC->,PC->,PC+1,PC->,NOP,NOP,RAM->,S,RAM->,S,RAM->,S,RAM->,S,RAM->,R0->,RAM->,R0->,DR1+DR2->,未定义,IN,ADD,STA OUT JMP,未定义 未定义,01,01,01 01,01,01 01,01,09,0A,0C,0B,0D,03,07,13,15,04,16,14,05,06,M03 00 80 40 20 把RAM传给AR,M04 00 80 08 A0 RAM的值给DR2 M05 A0 00 04 60 输入的值给DR1,M06 40 2B 02 80 实现按位加,M07 00 80 40 68 RAM赋值给AR,M08 00 00 00 80 判断散转,M09 00 00 02 81 实现IN操作,M0A 20 00 60 C0 按位加操作入口,M0B 20 00 60 E0,M0C 20 00 60 C8,M0D 20 00 60 A8,M0E 20 00 60 E8,M0F 20 00 60 98,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,6、装载,五、运行结果。
进一步将其组成系统地构造一台基本模型计算机,并编写相应的微程序,实验用扁平线,各部件单元的控制信号是以人为模拟产生为主,其指令格式如下(前三位为操作码):,[addr] 0100 0000 XXXXXXXX R0+[addr]→R0,R0 0110 0000 XXXXXXXX R0→[addr],LED 1000 0000 XXXXXXXX [addr]→LED,其余为双字节指令,如图7-10-1所示,当拟定“取指”微指令时,应将每条微指令代码化,当执行一条指令时,“指令寄存器”根据指令中的操作码,使下一条微指令指向相应的微程序首地址,一种是二进制代码开关,并与计算机连接,abs,SW ,0EH ,R0带进位左移,R0 ,LED ,无条件转移,设计模型机微程序流程图,AR,BUS,IR, P00 20 ,ADD R0,R0,AR PC+1,AR PC+1,AR,AR PC+1,BU,BU,BU,BU,-B US,BUS BUS->,BUS BUS->,DR,R0,调试。
上机调试掌握整机概念,导线若干,而本次实验将能在微程序控制下自动产生各部件单元的控制信号,XXXXXXXX为addr对应的二进制地址码,系统涉及到的微程序流程见图,该微指令的判别测试字段为P(1)测试,表7-10-1即为将图7-10-2的微程序流程图按微指令格式转化而成的“二进制微代码表”,先把它从内存取到BUS总线上,它作为输入设备(INPUT DEVICE),将串口线连接后,尝试调试,数据开关→R0,R0+(0EH)→R0,R0→(0FH),(0FH)→输出单元,图见下,IN R0,09H P03 60 0B ,RA,LED。
三、实验原理,实现特定指令的功能,这里,由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支,然后再传送至指令寄存器,指令划分为操作码和地址码字段,另一种是LED块,它作为输出设备(OUTPUT DEVICE),可以打开诊断测试连线,查看连线是否正确,理解它的工作原理及其步骤,STA 0BH,R0 P05 80 0B 。
导读:文档《中国计量学院计算机组成原理课程设计》共2页,当前为第1页,大小为123kb,是教育专区、高等教育、工学相关类别的资料,并提供若干种中国计量学院计算机组成原理课程设计的文本文档下载,如word文档下载、wps文档下载等。以下便是第1页的正文:
中国计量学院计算机组成原理课程实践(报告)
题目:复杂模型机的设计与实现按位加操作
二级学院
专业
班级
姓名
学号
指导教师
2011 年 12 月 22 日
一、实验目的
1、在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。
2、为其定义5条机器指令,并编写相应的微程序,上机调试掌握整机概念。
二、实验设备
Dais-CMH+/CMH 计算器组成原理教学实验系统一台,实验用扁平线,导线若干。三、实验原理
部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而本次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT (输出)、JMP(无条件转移),其指令格式如下(前三位为操作码):
============================================================== 助记符机器指令码说明
-------------------------------------------------------------- IN R0 0010 0000 数据开关内容状态→R0
ADD R0,[addr] 0100 0000 XXXXXXXX R0+[addr]→R0
STA [addr],R0 0110 0000 XXXXXXXX R0→[addr]
OUT [addr],LED 1000 0000 XXXXXXXX [addr]→LED
JMP addr 1010 0000 XXXXXXXX addr→PC
==============================================================
其中IN为单字节(8位),其余为双字节指令,XXXXXXXX为addr对应的二进制地址码。
根据以上要求设计数据通路框图,如图7-10-1所示。系统涉及到的微程序流程见图
8-7-3,当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前3位(IR7~IR5)作为测试条件,出现8路分支,占用8个固定微地址单元。
当全部微程序设计完毕后,应将每条微指令代码化,表7-10-1即为将图7-10-2的微程序流程图按微指令格式转化而成的“二进制微代码表”。
下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到BUS总线上,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P(1),
通过节拍脉冲T4的控制以便识别所要求的操作。“指令寄存器”根据指令中的操作码
译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。
本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUT DEVICE);另一种是LED块,它作为输出设备(OUTPUT DEVICE)。例如:输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到外部数据总线上,当LDED有效时,将数据打入输出锁存器,驱动LED显示。
图7-10-1基本模型机数据通路框图
四、实验步骤
1、按照实验要求在实验箱上把线路连接好,并与计算机连接。将串口线连接后,可以打开诊断测试连线,查看连线是否正确。
2、在Dais-CMH+/CMH上装载mxj1.abs,尝试调试,理解它的工作原理及其步骤。
3、先设计自己的宏观指令。
IN R0,SW ;数据开关→R0
ADD R0,0EH ;R0+(0EH)→R0
RLC R0 ;R0带进位左移
STA 0FH,R0 ;R0→(0FH)
OUT 0FH,LED ;(0FH)→输出单元
JMP 00H ;无条件转移
4、根据自己设计的指令,设计模型机微程序流程图。图见下。
运行微程序
01
pc->AR
Pc+1
02
RAM->BUS
BUS->IR
08
P(1)
5、根据微程序流程图写出微指令。 P00 20 ;IN R0
P01 40 09 ;ADD R0,09H P03 60 0B ;STA 0BH,R0 P05 80 0B ;OUT 0BH,LED P07 A0 00 ;JMP 00H
P09 55 寄存器中内容为55 P0A AA
------------以下为数据空间------------
M00 00 00 00 80 程序开始 M01 20 00 60 40 PC 赋值给AR 自加1 M02 00 80 10 12 数据总线内容赋值给IR
NOP SW->R0
PC->AR PC+1
PC->AR PC+1
PC->AR
PC+1
PC->AR PC+1
NOP
NOP
RAM->BU
S
RAM->BU
S
RAM->BU
S
RAM->BU
S
RAM->-B US
R0->BUS BUS->RA
RAM->BUS BUS->LED
R0->DR
DR1+DR2->R0
未定义
IN
ADD
STA OUT JMP
未定义 未定义
01
01
01 01
01
01 01
01
09
0A
0C
0B
0D
03
07
13
15
04
16
14
05
06
M03 00 80 40 20 把RAM传给AR
M04 00 80 08 A0 RAM的值给DR2 M05 A0 00 04 60 输入的值给DR1
M06 40 2B 02 80 实现按位加
M07 00 80 40 68 RAM赋值给AR
M08 00 00 00 80 判断散转
M09 00 00 02 81 实现IN操作
M0A 20 00 60 C0 按位加操作入口
M0B 20 00 60 E0
M0C 20 00 60 C8
M0D 20 00 60 A8
M0E 20 00 60 E8
M0F 20 00 60 98
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
6、装载,调试。
五、运行结果