本课程的课程目标是:培养学生掌握计算机硬件的基本工作原理,深刻理解程序在计算机硬件上被执行的过程,培养学生分析问题、设计方案的能力,培养解决复杂工程问题的能力。
本课程的教学任务是:从计算机的运算器、存储器到控制器,依次讲解各部件的结构和工作原理,分别依托以MIPS为RISC机型的实例,和以Yy-Z02模型机为CISC机型的实例,来重点讲述计算机单处理器系统的硬件组成、工作原理与设计方法。
《计算机组成原理》是计算机类及其相关专业的一门专业主干课程,也是一门重要的专业核心课程,在专业课程体系中起承前启后的作用。课程主要以计算机硬件的基本工作原理为基础,使学生深刻理解程序在计算机硬件上被执行的过程,具备对计算机硬件系统进行分析、设计、开发与使用的基本能力。
通过理论教学和实践活动,达到以下课程目标:
1. 能够运用信息编码的基本原理,识别与表达计算机系统中的典型数值数据和非数值数据。(支撑毕业要求2-1)
2. 初步具备在模拟环境与制约条件下,设计计算机硬件部件与模块的能力;(支撑毕业要求1-3、3-1)
3. 具备基本的计算机硬件系统功能、指令系统与数据通路的分析能力;(支撑毕业要求4-1)
4. 初步具备设计简单的模型计算机的能力。(支撑毕业要求1-3、4-1)
5. 能够基于计算机组成与架构的知识,了解计算机体系结构的新技术与发展趋势。(支撑毕业要求10-3)
课程目标支撑的毕业要求指标点如表1所示:
表1 课程目标与毕业要求指标点对应关系
毕业要求 | 指标点 | 课程目标 | ||||
1 | 2 | 3 | 4 | 5 | ||
毕业要求1:工程知识 | 1-3 能够将计算机基础和专业知识用于对复杂工程问题解决方案的分析与优化。 |
| H |
| H |
|
毕业要求2:问题分析 | 2-1 能够应用数学、自然科学和工程科学的基本原理识别、表达计算机相关领域的复杂工程问题。 | H |
|
|
|
|
毕业要求3:设计/开发解决方案 | 3-1能够针对计算机复杂系统设计与开发满足特定需求的模块或算法。 |
| H |
|
|
|
毕业要求4:研究 | 4-1能够在解决计算机复杂工程过程中体现研究意识。 |
|
| M | H |
|
毕业要求10:沟通 | 10-3 至少具备一门外语的应用能力,对计算机技术国际研究前沿有初步了解,能够在跨文化背景下进行沟通和交流。 |
|
|
|
| L |
注:L——低相关支撑;M——中相关支撑;H——高相关支撑
教学内容对课程目标的支撑关系、教学方法与评价依据如表1所示:
表1 教学内容和方法与课程目标的对应关系
教学内容 | 教学方法 | 评价依据 | 课程目标 | ||||
1 | 2 | 3 | 4 | 5 | |||
1. 概论 | 课堂讲授、自学 | 作业成绩、课堂互动情况、期末考试 |
|
|
| √ |
|
2. 信息编码与数据表示 | 课堂讲授、课堂练习、课后实践 | 作业与实践成绩、课堂互动情况、期末考试 | √ |
|
|
|
|
3. 运算方法和运算器 | 课堂讲授、课堂练习、案例分析设计 | 课堂练习成绩、作业成绩、期末考试 |
| √ | √ | √ |
|
4. 存储系统 | 课堂讲授、课堂练习、文献查阅 | 课堂练习成绩、作业成绩、阅读报告、期末考试 |
| √ |
| √ | √ |
5. 指令系统 | 课堂讲授、课后实践 | 作业与实践成绩、期末考试 |
|
| √ | √ |
|
6. 控制器 | 课堂讲授、案例分析设计、文献查阅 | 作业成绩、阅读报告、期末考试 |
| √ | √ | √ | √ |
7. 输入输出系统 | 课堂讲授、课后实践 | 作业成绩、期末考试 |
|
|
| √ |
|
课程教学的详细内容与要求如下:
1. 概论
(1)教学内容:
l 课程研究的对象,及电子数字计算机的定义和特点;
l 冯·诺依曼体系结构的存储程序概念及其计算机的基本特点;
l 多核的基本概念及其处理器芯片的发展情况;
l 计算机系统的层次结构,计算机语言的种类与特点;
l 计算机硬件系统的组成;
(2)教学重点:冯·诺依曼体系结构计算机的特点、计算机系统的层次结构、计算机语言的种类与特点、计算机硬件系统的组成。
(3)教学难点:计算机语言的种类与特点。
(4)教学要求:能够解释本课程研究对象的属性,能够分辨计算机中各种语言的层次,对计算机硬件组成有初步认识。
2. 信息编码与数据表示
(1)教学内容:
l 计算机中表示信息的基本方法;机器数与数据格式;
l 原码、反码、补码、移码定点机器数;
l 浮点机器数的表示,IEEE 754浮点数标准;
l 字符、汉字编码和BCD编码;
l 校验码的编译码原理与检错纠错能力;
l 现代计算机中的数据表示。
(2)教学重点:定点机器数和浮点机器数的表示方法。
(3)教学难点:浮点机器数的表示、IEEE 754浮点数标准。
(4)教学要求:能够根据约定的数据类型或者格式,进行数据的编码、译码以及表示范围的计算,能够解释校验码的作用与原理,掌握奇偶校验码的编译码方法。
3. 运算方法和运算器
(1)教学内容:
l 定点补码的加减运算方法及其硬件实现;
l 超前进位加法器的原理,多功能ALU的实现方法;
l 定点乘法器和定点除法器的串行运算原理及其硬件实现,快速乘除法运算技术;
l 浮点机器数加减和乘除运算的步骤和原理,浮点运算器的硬件实现;
l 运算器部件的组成和数据通路,运算结果的标志;
l 典型运算器实例的结构及原理。
(2)教学重点:补码的加减运算方法和运算器、超前进位加法器及多功能ALU、浮点数的加减乘除运算步骤、运算器的结构和数据通路。
(3)教学难点:并行乘法器和除法器的运算原理、运算器的结构和数据通路。
(4)教学要求:能够根据计算机的定点运算和浮点运算的基本原理,模拟实现计算过程;能够分析与设计基本的运算器数据通路;能够对运算器的运算结果标志进行解释与计算;能够根据需求,在模拟环境下,设计一个运算器模块。
4. 存储系统
(1)教学内容:
l 存储器分类及存储系统的层次结构,存储器的主要技术指标;
l 静动态存储器的结构、工作原理及特点;
l CPU读写存储器的基本过程,静态存储器的扩充及与CPU的连接;
l 动态存储器的刷新控制方式;
l 各种高速存储器的工作原理;
l 高速缓冲存储器Cache的基本原理、地址映射方法、替换策略以及Cache一致性的概念;
l RAID存储阵列、虚拟存储器。
(2)教学重点:存储系统的层次结构、存储器分类、SRAM和DRAM的工作原理及特点、对主存储器进行扩展和译码连接、Cache的工作原理和地址映射方法。
(3)教学难点:SRAM和DRAM的工作原理、存储器的扩展和译码连接、Cache的地址映射方法。
(4)教学要求:能够解释SRAM和DRAM的差异,区分各种典型存储器的属性;能够按照设计要求,设计一个存储器模块,包括对SRAM进行容量扩充及与CPU正确连接;能够对特定条件下的Cache进行命中率等参数计算,并分析其具体工作过程;能够通过现代信息技术与资源,获取目前各类存储器及Cache相关资料,并了解其新技术和发展趋势。
5. 指令系统
(1)教学内容:
l 计算机指令系统和机器指令的概念,机器指令与汇编指令的关系;
l 指令系统的地位与发展历程;
l 机器指令的格式、指令类型与操作码扩展技术;
l 各种寻址方式的寻址原理、用途与有效地址计算方法;
l 机器指令代码的编码方法、CPU译码机器指令代码并执行的方法;
l CISC和RISC的指令系统特点;
l Pentium和MIPS典型指令系统实例。
(2)教学重点:机器指令的格式、指令的操作码扩展技术、指令系统的设计、各种寻址方式的有效地址计算方法和操作数获取方法、机器指令代码的编码和译码、CISC和RISC的指令系统特点。
(3)教学难点:使用操作码扩展技术设计指令系统、计算各种寻址方式的EA和操作数、指令代码的编码和译码。
(4)教学要求:具备基本的指令系统设计能力;能够针对特定的指令系统范例,进行指令代码的编码、译码、预测执行结果。
6. 控制器
(1)教学内容:
l 控制器组成、结构、功能及分类;
l CPU的设计过程和设计方法;
l CPU的系统结构和数据通路设计方法;
l 指令周期、机器周期和时钟周期的概念,及指令的执行过程;
l 硬布线控制器的特点、设计方法及其硬件实现;
l 微程序控制器的工作原理、设计技术及实现方法;
l 指令流水线的基本原理;
l RISC和CISC的CPU特点;
l 典型CPU的结构和特性。
(2)教学重点:控制器的组成及功能、CPU的系统结构和数据通路设计、指令的执行过程、硬布线控制器的工作原理与设计、微程序控制器的工作原理与设计、RISC和CISC的CPU特点。
(3)教学难点:CPU的系统结构和数据通路设计、指令的执行过程、硬布线控制器的工作原理与设计、微程序控制器的工作原理与设计。
(4)教学要求:能够针对确定的指令系统和系统结构,对数据通路做出分析和设计;能够通过分析指令的执行过程,推导出控制器需要发送的控制信号;能够设计微指令格式及其编码或者硬布线的操作控制信号形成部件;初步具备设计一个简单模型计算机CPU及存储器的能力;能够通过现代技术与资源,获取目前主流CPU的相关资料,了解系统架构的新技术和发展趋势。
7. 输入输出系统
(1)教学内容:
l 输入输出设备的工作特点及分类;
l I/O指令的格式与外设的编址方式;
l CPU与外设交换数据的几种方式;
l 中断系统相关的基本概念,中断作用及其完整过程,中断请求与判优方法,中断响应的过程、中断服务与返回的实现方法。
(2)教学重点:I/O指令的格式与外设的编址方式、CPU与外设交换信息的方式、中断的基本概念、中断的过程、中断的请求与响应、中断返回。
(3)教学难点:中断的基本概念、中断的完整过程、中断的请求与响应。
(4)教学要求:能够分析CPU与I/O设备之间的各种传送数据方式的优缺点;能够列举中断在计算机系统中的应用实例,理解其重要性;能够将中断的实现与控制器的设计相关联。
教学内容 | 讲课时数 | 实验时数 | 实践学时 | 上机时数 | 自学时数 | 习题课 | 讨论时数 |
1. 概论 | 2 |
|
|
| 2 |
|
|
2. 信息编码与数据表示 | 6 |
|
|
| 6 | 0.5 |
|
3. 运算方法和运算器 | 8 |
|
|
| 4 | 0.5 |
|
4. 存储系统 | 12 |
|
|
| 4 | 1 |
|
5. 指令系统 | 8 |
|
|
| 4 | 1.5 |
|
6. 控制器 | 19 |
|
|
| 10 | 1 |
|
7. 输入输出系统 | 4 |
|
|
| 8 | 0.5 |
|
合计 | 59 |
|
|
| 38 | 5 |
|
总计 | 64学时+38自学学时 |
备注:自学学时用于预习、复习、习题、自学、课堂拓展等学习活动等。
包健、冯建文、章复嘉,计算机组成原理与系统结构(第二版),高等教育出版社,2015.7
数字电路设计
通过视频学习,完成测试,到达课程要求后,可以获得课程主讲教师签名颁发的合格证书和优秀证书。
总分(百分制)=单元测验35%+期末考试55%+课程讨论10%
50-79分:合格证书
80-100分:优秀证书
说明:
1、视频中的驻点问题和随堂测验,无论对错均不计入课程成绩。
2、课程讨论10%只对课程讨论区有效,回复教师布置的讨论题并收到2个赞即可获得1分。其他栏目参与的任何讨论不予计分。
(1) David A.Pattterson(美)等著,康继昌等译,计算机组成与设计-硬件/软件接口(第4版),机械工业出版社,2012.1
(2) 唐朔飞,计算机组成原理(第2版),高等教育出版社,2008.1
(3) 蒋本珊,计算机组成原理(第3版),清华大学出版社,2013.8
(4) 白中英、戴志涛,计算机组成原理(第5版),科学出版社,2013.3
(5) William Stallings(美)著,张昆藏等译,计算机组织与结构:性能设计(第7版),清华大学出版社,2006.3
(6) Barry B.Brey(美)著,Intel微处理器(英文版•第7版),机械工业出版社,2006.8
(7) Arnold S.Berger(美)著,Hardware and Computer Organization (英文影印版),机械工业出版社,2006.1
(8) 多核系列教材编写组,多核程序设计,清华大学出版社,2007.8
(9) 刘佩林主编,MIPS体系结构与编程,科学出版社,2008.6
(10)Dominic Sweetman著,李鹏等译,MIPS体系结构透视,机械工业出版社,2008.5