计算机学院计算机科学与技术专业
《计算机组成原理课程设计》报告
(2008/2009学年 第一学期)
学生姓名: 闫全胜 学生班级: 计算机062202H 学生学号: 200620030227 指导教师: 康葆荣
2009年1月3日
计算机组成原理课程设计
目录
1 关于此次课程设计 ...................................................................................................................... 2
1.1 设计的目的:................................................................................................................... 2 1.2 设计内容及要求: ........................................................................................................... 2 2 分析阶段 ...................................................................................................................................... 3
2.1指令译码电路分析 ............................................................................................................ 3 2.2 寄存器译码电路分析 ....................................................................................................... 4 2.3 微指令格式分析............................................................................................................... 5 2.4 时序分析 .......................................................................................................................... 6 3 初步设计阶段 .............................................................................................................................. 7
3.1 数据格式 .......................................................................................................................... 7 3.2指令描述 ........................................................................................................................... 7 3.3 存储器分区 ...................................................................................................................... 9 3.4 控制台微程序流程: ..................................................................................................... 10 3.5 运行微程序 .................................................................................................................... 11 4 详细设计阶段 ............................................................................................................................ 12
4.1控制台流程分解.............................................................................................................. 12 4.2 运行微程序子流程 ......................................................................................................... 15 4.3 微程序总流程图............................................................................................................. 24 5 实现阶段 .................................................................................................................................... 25
5.1 所用模型机数据通路的介绍 ......................................................................................... 25 5.2 微程序代码设计与编写 ................................................................................................. 26 微程序二进制代码表 .................................................................................................................... 26
5.3 机器指令的输入及运行 ................................................................................................. 28 心得体会 ........................................................................................................................................ 30 参考资料 ........................................................................................................................................ 31
1
计算机组成原理课程设计
1 关于此次课程设计
1.1 设计的目的:
本课程设计是计算机科学与技术专业重要的实践性教学环节之一,是在学生学习完《计算机组成原理》课程后进行的一次全面的综合设计。目的是通过一个完整的8位指令系统结构(ISA)的设计和实现,加深对计算机组成原理课程内容的理解,建立起整机系统的概念,掌握计算机设计的基本方法,培养学生科学的工作作风和分析、解决实际问题的工作能力。 1.2 设计内容及要求:
基于TDN-CM++计算机组成原理实验教学系统,设计和实现一个8位指令系统结构(ISA),通过调试和运行,使设计的计算机系统能够完成指定的功能。
设计过程中要求考虑到以下各方面的问题:
1、指令系统风格(寄存器-寄存器,寄存器-存储器,存储器-存储器); 2、数据类型(无符号数,有符号数,整型,浮点型); 3、存储器划分(指令,数据);
4、寻址方式(立即数寻址,寄存器寻址,直接寻址等); 5、指令格式(单字节,双字节,多字节);
6、指令功能类别(算术/逻辑运算,存储器访问,寄存器操作,程序流控制,输入/输出);
7、依据CPI值对指令系统进行性能分析。
要求学生综合运用计算机组成原理、数字逻辑和汇编语言等相关课程的知识,理解和熟悉计算机系统的组成原理,掌握计算机主要功能部件的工作原理和设计方法,掌握指令系统结构设计的一般方法,掌握并运用微程序设计(Microprogramming)思想,在设计过程中能够发现、分析和解决各种问题,自行设计自己的指令系统结构(ISA)。
2
计算机组成原理课程设计
2 分析阶段
2.1指令译码电路分析 指令译码工作原理图:
SE5 SE4 SE3 SE2 SE1FZFCT4P(1)P(2)P(3)SW-ASW-BP(4)I7 I6 I5 I4 I3 I2
图2.1指令译码工作原理图
根据上图得出指令译码器的逻辑表达式如下。
其中P(1) ~P(4)为低电平有效,当选用时该信号为零;I7 ~I2表示机器指令前六位;SE5 ~SE1为微控制器但愿位地址锁存器的强制端输出;SWA SWB均为1(启动程序时)。
此设计中设定为P(1)有效,P(2) P(3)均无效,FC FZ T4无需考虑。 由算出的SE5 ~SE1可知操作码对应的入口微地址。
3
计算机组成原理课程设计
2.2 寄存器译码电路分析
寄存器译码原理图如下:
LDB0译码器I1I0S1S2ENBD1D4LDR1LDRi译码器S1S2ENBD1D4LDR2R0-BRD-B译码器I3I2S1S2ENBD1D4R1-BRS-BR2-BRI-B
图2.2 寄存器译码原理图
寄存器的输入、输出不仅决定于输入、输出开关,还与机器指令的后四位(即I3~I0)有关,由其决定哪个寄存器被选中。 2.2.1 寄存器的输入
LDR0 LDR1 LDR2 LDRi 0 0 0 I1 0 0 1 I0 0 1 0
LDRi为寄存器的输入开关,且为低电平有效(即LDRi=0),I1、I0对寄存器进行选择,决定数据进入哪个寄存器。 2.2.2 寄存器的输出
RS-B RD-B RI-B 1 1 1 1 1 1 1 0 I3 0 0 1 × I2 0 1 0 ×
4
R0-B 0 R1-B 0 R2-B 0 1