课程设计题目要求
计算机组成与系统结构课程设计
(2022.12)
计算机组成与系统结构课程设计(2022.12)
一、本课程设计的性质、目的、任务
《计算机组成与系统结构课程设计》是计算机学院各专业集中实践性环节之一,是学习完《计算机组成与系统结构》课程后进行的一次全面的综合练习。其目的是综合运用所学计算机原理知识,设计并实现一台模型计算机,以便巩固所学的知识,提高分析问题和解决问题的能力。
二、本课程设计的基本理论
1、掌握算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。
2、掌握存储器组织、读写方式及与总路线组成的数据通路,掌握地址总线、数据总线的工作原理。
3、掌握指令结构和指令取指、执行工作过程。
4、掌握CPU的微程序控制原理。
三、课程设计的主要内容
1、题目
综合运用所学计算机原理知识,设计并实现具有以下14条指令的指令集结构的模型计算机:
编号 |
助记符 |
机器指令码 |
说明 |
0 |
SUB Rd,Rs |
1000 RdRs |
Rd-Rs→Rd |
1 |
ADD Rd,Rs |
1001 RdRs |
Rd+Rs→Rd |
2 |
MOV Rd,Rs |
1010 RdRs |
Rs→Rd |
3 |
DEC Rd |
1011 Rd00 |
将Rd值减1 |
4 |
CLR Rd |
1100 Rd00 |
将Rd清零 |
5 |
RL Rd |
1101 Rd00 |
Rd循环左移一位 |
6 |
RRC Rd |
1110 Rd00 |
Rd带进位右移一位 |
7 |
AND Rd,Rs |
1111 RdRs |
Rd&Rs→Rd (Rd和Rs相与) |
8 |
LDI Rd,* |
0000 Rd00 XXXXXXXX |
将指令中的立即数(第二字节)送入Rd |
9 |
OUT IOH,Rs |
0001 00Rs |
Rs→i/o(数据开关)高字节 |
10 |
LDA Rd,M |
0010 Rd00 XXXXXXXX XXXXXXXX |
[M] →Rd |
11 |
STA M,Rs |
0011 00Rs XXXXXXXX XXXXXXXX |
Rs→[M] |
12 |
JMP M |
0100 0000 XXXXXXXX XXXXXXXX |
[M]→PC,即跳转到M所指单元 |
13 |
HALT |
0101 0000 |
停机 |
2、设计提示
1)上表中,机器指令码的高4位为指令操作码,M为16位存储器地址, Rs为源寄存器,Rd为目的寄存器,占2位,并规定:
Rs或Rd |
选定的寄存器 |
00 01 10 11 |
R0 R1 R2 R3 |
2)在微程序中,微地址001为取指。
3)各指令指行阶段微程序入口地址的确定方式:
微地址位号 |
10 9 |
8 7 6 5 |
4 3 2 1 0 |
内容 |
1 1 |
IR7~IR4 |
0 0 0 0 0 |
例如,第5条指令”RL Rd” 的指令码为0101 Rd00 则指令码的高4位IR7~IR4为0101,由上表知,微程序入口微地址为: 11 0101 00000 ,即6A0H。
注:第10、9位来自0001条微指令中upc所设置值的第10、9位。例如,如果是600则为11,如果是400则为10.
3、开展步骤
(1)按照第3点的方法,给出所有14条指令的微程序入口微地址;
(2)通过分析每条指令的功能明确其的微程序流程,可参考实验指导书图3-4-1、图3-2-2、图3-3-1;
(3)写出每条微指令的微命令,即24个微控制位信号,可参考实验指导书表3.4.1、表3.2.1、表3.3.1和“微控制器编程手册”第2章。
(4)建议采用逐条指令设计实现的方式,一条实现并用汇编语句测试通过后(指令功能、下址顺序均正确)再进行下一条的设计。
4、检查方式
模型计算机设计完成后,用所给的测试程序check22.asm(测13条非转移指令)检查正确性。检查方法:在测试程序中#load s本人的.IS微指令程序,实验箱电源关闭重启并连接,装载后选择“运行”或“单步”执行(如无实验箱,在仿真软件上进行)。
check22.asm运行的正确结果为:寄存器R0R1R2R3分别显示00112233,IOH显示33。
四、基本要求
1、独立完成;
2、严格按上述指令集格式要求设计出模型机,实现各项功能,格式不得有任何改动;
3、<