计算机组成原理课程设计(范文)
第 PAGE \* Arabic 1 页第 PAGE \* Arabic 1 页
计算机组成原理课程设计报告
班级:08计算机 0803 班 姓名: 陈祥 学号:
完成时间: 2011.1.3
一、课程设计目的
1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系;
2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念;
3.培养综合实践及独立分析、解决问题的能力。
二、课程设计的任务
针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。
三、 课程设计使用的设备(环境)
1.硬件
COP2000实验仪
PC机
2.软件
COP2000仿真软件
四、课程设计的具体内容(步骤)
1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现
1.该模型机指令系统的特点:
从指令字长来看该模型机指令系统包含单字长和双字长两种格式的指令,字长为8位,对于需要访问内存的指令都是双字长的,指令系统中大多数指令是单字长;从指令操作码是定长和变长来看,这里认为,虽然ADD A, R?和ADD A, @R?都是执行加法操作,但他们是不同的指令,将指令格式中寻址寄存器的两位也认为是操作码的一部分,这两条指令的操作码不同。因此,指令系统的指令格式是定长操作码的,操作码为6位。
1)双字长的指令格式如下:
AOP R?
A
OP R?
举例:
助记符
机器码1
机器码2
ADD A, MM
000110xx
MM
ADD A, #II
000111xx
II
MOV A, MM
011110xx
MM
2)单字长的指令格式如下:
OP
OP R?
举例:
助记符
机器码1
机器码2
ADD A, R?
000100xx
OR A, R?
011000xx
MOV R?, A
100000xx
2.该模型机微指令系统的特点(包括其微指令格式的说明等):
该模型机微指令系统的微指令格式是水平型微指令,微指令的字长为24位,是机器字长的3倍,每条微指令仅包含微操作控制字段,无顺序控制字段。操作控制字段的每一位对应一个微操作,采用字段直接译码的方式对系统进行控制。微指令的具体格式如下:
IRENPCOES0S1S2AENWENX0X1X2FENCNRWRRRDSTENOUTENMAROEMARENELPEINTEMENEMRDEMWRXRD举例:微指令CBFFFF:取指令
IREN
PCOE
S0
S1
S2
AEN
WEN
X0
X1
X2
FEN
CN
RWR
RRD
STEN
OUTEN
MAROE
MAREN
ELP
EINT
EMEN
EMRD
EMWR
XRD
1
1
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2。计算机中实现乘法和除法的原理
(1)无符号乘法
①实例演示(即,列4位乘法具体例子演算的算式):
1 101 被乘数
× 1011乘数
1101位积
移位相加11010位积
移位相加
000000位积
1101000位积
10001111结果
②硬件原理框图:
右移ALU
右移
ALU
左移
左移
CYST
CY
ST
WA
W
A
被乘数
被乘数
R0
R0
乘数R1
乘数
R1
4R2
4
R2
③算法流程图:
开始
开始
中间结果清0
中间结果清0
乘数右移一位
乘数右移一位
移出位为1?
移出位为1?
Yes
Yes
No中间结果加被乘数
No
中间结果加被乘数
No
No
被乘数左移一位
被乘数左移一位
移位次数为4
移位次数为4
Yes
Yes
保存中间结果
保存中间结果
结束
结束
(2)无符号除法
①实例演示(即,列4位除法具体例子演算的算式):
01010商
110110000111被除数
00000000不够减,商上0,除数右移一位
10000111做差后的被除数
01