计算系统结构教案Word文档格式.docx
《计算系统结构教案Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算系统结构教案Word文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
重点:
计算机系统结构的层次结构、量化评价方法。
难点:
量化评价方法(Amdahl定律、CPU性能公式)。
教学手段与方法
多媒体讲授
教学过程:
(包括授课思路、过程设计、讲解要点及各部分具体内容、时间分配等)
授课思路:
通过课程介绍等引起学生对该课程的浓厚兴趣,进而开始课程内容的讲授。
过程设计:
课程介绍:
30分钟
正课内容:
65分钟
小结、作业:
5分钟
讲解要点与主要内容:
课程简介:
计算机系统结构是一门从系统整体的角度来讨论计算机系统中各部分的设计问题课程。
具体内容包括介绍目前常见的典型计算机结构,讨论为什么要这样设计、如何设计、如何评价等一系列问题。
本课程是计算机及相关专业的一门重要的专业课,在考研和各种计算机认证考试中都会涉及到本课程的内容。
参考书目:
1.ComputerArchitecture—AQuantitativeApproach(Thirdedition)JohnL.Hennessy,DavidA.Patterson.
2.ParallelComputerArchitecture–AHardware/softwareApproach(secondedition)DavidE.Culler,JaswinderPalSingh,AnoopGupta.
3.计算机系统结构(第二版).郑纬民,汤志忠.清华大学出版社
4.计算机系统结构.张晨曦,王志英.高等教育出版社
授课及考核方式介绍:
采用课堂讲授形式授课,授课时间1-15周,期末采用闭卷考试形式考核学习效果,综合成绩计算参照下面公式:
综合成绩=平时成绩(考勤、作业)*30%+期末成绩*70%
正课内容:
第一章概述
1.1从计算机发展史的角度讨论计算机系统结构技术的作用。
1.2计算机系统结构的基本概念
1.计算机系统=硬件/固件+软件
2.计算机语言从低级向高级发展
高一级语言的语句相对于低一级语言来说功能更强,更便于应用,但又都以低级语言为基础。
1.从计算机语言的角度,把计算机系统按功能划分成多级层次结构。
每一层以一种语言为特征,典型层次结构如下
2.常见的几个相关概念
Ø
虚拟机:
由软件实现的机器
语言实现的两种基本技术
❑翻译:
先把N+1级程序全部转换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。
❑解释:
每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。
3.计算机系统结构的定义
1)计算机系统结构的经典定义:
程序员所看到的计算机属性,即概念性结构与功能特性。
按照计算机系统的多级层次结构,不同级程序员所看到的计算机具有不同的属性。
透明性:
在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
2)Amdahl提出的系统结构
传统机器语言级程序员所看到的计算机属性。
3)广义的系统结构定义:
指令集结构、组成、硬件(计算机设计的3个方面)
4.计算机系统结构、组成、实现之间的关系
5.计算机系统结构的分类
1.3计算机系统量化评价方法
1以经常性事件为重点
对经常发生的情况采用优化方法的原则进行选择,以得到更多的总体上的改进。
优化是指分配更多的资源、达到更高的性能或者分配更多的电能等。
2Amdahl定律
加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。
⏹加速比依赖于两个因素
(1)可改进比例:
在改进前的系统中,可改进部分的执
行时间在总的执行时间中所占的比例。
它总是小于等于1。
例如:
一个需运行60秒的程序中有20秒的运算可以加速,
那么这个比例就是20/60。
(2)部件加速比:
可改进部分改进以后性能提高的倍数。
它是改进前所需的执行时间与改进后执行时间的比。
一般情况下部件加速比是大于1的。
⏹典型例题讲解
例1.1将计算机系统中某一功能的处理速度提高到原来的20倍,但该功能的处理时间仅占整个系统运行时间的40%,则采用此提高性能的方法后,能使整个系统的性能提高多少?
例1.2某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的20倍,而系统运行某一程序的整体性能提高到原来的5倍,试计算该程序中浮点操作所占的比例。
3CPU性能公式
执行一个程序所需的CPU时间
CPU时间=执行程序所需的时钟周期数×
时钟周期时间
其中,时钟周期时间是系统时钟频率的倒数。
每条指令执行的平均时钟周期数CPI(CyclesPerInstruction)
CPI=执行程序所需的时钟周期数/IC
其中IC:
所执行的指令条数,程序执行的CPU时间可以写成
CPU时间=IC×
CPI×
时钟周期时间
小结:
通过本节课的学习,使学生了解了计算机系统结构课程的特点、安排以及主要学习内容;
学习了计算机系统结构的概念,常见的两种量化性能评价技术。
思考题、讨论题、作业
课后习题1~4。
教学后记
2011年3月5日
理解掌握计算机系统的量化分析技术;
掌握不同的性能评价方法;
了解计算机发展过程中软、硬件对系统结构的影响。
量化分析技术、性能评价方法、计算机发展过程中系统结构的变化。
量化分析技术。
通过复习回顾上一次课所讲主要内容:
计算机系统结构的相关概念、定量分析技术中的Amdahl定律引入本次课的主要内容。
回顾:
计算机系统的层次性结构、计算机系统结构经典定义、量化评价技术(1.经常性事件优先的原则;
2.Amdahl定律)
引入:
由Amdahl定律的局限性,提出CPU性能公式的分析方法,介绍CPU性能公式的不同形式。
正式内容讲解:
CPU性能公式的典型例题。
上次课重点内容回顾:
15分钟
80分钟
1.CPU性能公式的例题;
程序局部性原理;
2.计算机系统的性能评测:
执行时间和吞吐率;
基准测试程序;
3.计算机系统结构的发展:
冯.诺依曼结构(特点、改进);
软件对系统结构的影响:
系列机;
模拟仿真;
统一高级语言。
4.器件发展对系统结构的影响
5.应用对系统结构的影响
6.系统结构的生命周期
1.3定量分析技术
3CPU性能公式
例1.3考虑条件分支指令的两种不同设计方法:
(1)CPUA:
通过比较指令设置条件码,然后测试条件码进行分支。
(2)CPUB:
在分支指令中包括比较过程。
在这两种CPU中,条件分支指令都占用2个时钟周期,而所有其他指令占用1个时钟周期。
对于CPUA,执行的指令中分支指令占20%;
由于每条分支指令之前都需要有比较指令,因此比较指令也占20%。
由于CPUA在分支时不需要比较,因此CPUB的时钟周期时间是CPUA的1.25倍。
问:
哪一个CPU更快?
如果CPUB的时钟周期时间只是CPUA的1.1倍,哪一个CPU更快呢?
分析:
本题若不考虑所有系统问题,则可用CPU性能公式:
CPU时间A=ICA×
CPIA×
时钟周期A
进行分析比较。
4.程序的局部性原理
1.3.2计算机系统的性能评测
1.执行时间和吞吐率
如何评测一台计算机的性能,与测试者看问题的角度有关。
用户关心的是:
单个程序的执行时间(执行单个程序所花的时间很少)
数据处理中心的管理员关心的是:
吞吐率(在单位时间里能够完成的任务很多)
2.基准测试程序
用于测试和比较性能的基准测试程序的最佳选择是真实应用程序。
例如编译器)
以前常采用简化了的程序,例如:
❑核心测试程序:
从真实程序中选出的关键代码段构成的小程序。
❑小测试程序:
简单的只有几十行的小程序。
❑合成的测试程序:
人工合成出来的程序。
3.性能比较
总执行时间:
计算机执行所有测试程序的总时间
平均执行时间:
各测试程序执行时间的算术平均值
加权执行时间:
各测试程序执行时间的加权平均值
MIPS(MillionInstructionsPerSecond)
MFLOPS(MillionFLOatinstructionsPerSecond)
1.4计算机系统结构的发展
1.4.1冯·
诺依曼结构
1.存储程序原理的基本点:
指令驱动,程序预先存放在计算机存储器中,计算机一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。
1.冯·
诺依曼结构的主要特点
以运算器为中心。
在存储器中,指令和数据同等对待。
指令和数据一样可以进行运算,即由指令组成的程序是可以修改的。
存储器是按地址访问、按顺序线性编址的一维结构,每个单元的位数是固定的。
指令的执行是顺序的。
❑一般是按照指令在存储器中存放的顺序执行。
❑程序的分支由转移指令实现。
❑由指令计数器PC指明当前正在执行的指令在存储器中的地址。
指令由操作码和地址码组成。
指令和数据均以二进制编码表示,采用二进制运算。
3.对系统结构进行的改进
输入/输出方式的改进
采用并行处理技术
❑如何挖掘传统机器中的并行性?
❑在不同的级别采用并行技术。
例如,微操作级、指令级、线程级、进程级、任务级等。
存储器组织结构的发展
❑相联存储器与相联处理机
❑通用寄存器组
❑高速缓冲存储器Cache
指令集的发展的两个发展方向:
❑复杂指令集计算机(CISC,ComplexInstructionSetComputer)
❑精减指令集计算机(RISC,ReducedInstructionSetComputer)
1.4.2软件对系统结构的影响
软件的可移植性:
一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上正确地运行。
差别只是执行时间的不同。
我们称这两台计算机是软件兼容的。
实现可移植性的常用方法:
采用系列机,模拟与仿真,统一高级语言。
1.系列机
由同一厂家生产的具有相同系统结构,但具有不同组成和实现的一系列不同型号的机器。
❑较好地解决软件开发要求系统结构相对稳定与器件、硬件技术迅速发展的矛盾。
兼容机:
由不同公司厂家生产的具有相同系统结构的计算机
2.模拟和仿真
使软件能在具有不同系统结构的机器之间相互移植。
❑在一种系统结构上实现另一种系统结构。
❑从指令集的角度来看,就是要在一种机器上实现另一种机器的指令集。
模拟:
用软件的方法在一台现有的机器(称为宿主机)上实现另一台机器(称为虚拟机)的指令集。
❑通常用解释的方法来实现。
❑运行速度较慢,性能较差。
仿真:
用一台现有机器(宿主机)上的微程序去解释实现另一台机器(目标机)的指令集。
❑运行速度比模拟方法的快
❑仿真只能在系统结构差距不大的机器之间使用
3.统一高级语言
实现软件移植的一种理想的方法
较难实现
1.4.3器件发展对系统结构的影响
1.摩尔定律
集成电路芯片上所集成的晶体管数目每隔18个月就翻一番。
2.计算机的分代主要以器件作为划分标准。
它们在器件、系统结构和软件技术等方面都有各自的特征。
1.4.4应用对系统结构的影响
1.不同的应用对计算机系统结构的设计提出了不同的要求
2.应用需求是促使计算机系统结构发展的最根本的动力
3.一些特殊领域:
需要高性能的系统结构
高结构化的数值计算:
气象模型、流体动力学、有限元分析
非结构化的数值计算:
蒙特卡洛模拟、稀疏矩阵
实时多因素问题:
语音识别、图像处理、计算机视觉
大存储容量和输入输出密集的问题:
数据库系统、事务处理系统
图形学和设计问题:
计算机辅助设计
人工智能:
面向知识的系统、推理系统等
1.4.5系统结构的生命周期
1.系统结构的生命周期:
从诞生、发展、成熟到消亡
从硬件成熟到系统软件成熟大约需要5~7年的时间
从系统软件成熟到应用软件成熟,大约也需要5~7年时间。
再过5~7年的时间,这种系统结构
本次课主要介绍了计算机量化评价技术、性能评测标准、计算机系统结构的发展变化等内容。
通过本节课的学习,应使学生理解掌握计算机系统的量化评价技术,理解系统结构的发展变化的内在原因。
课后习题6~9。
第二章计算机指令集结构
2011年3月8日
2.执行时间和吞吐率
3.基准测试程序
4.性能比较
2.存储程序原理的基本点:
2.冯·
4.对系统结构进行的改进
2.系列机
3.模拟和仿真
4.统一高级语言
3.摩尔定律
4.计算机的分代主要以器件作为划分标准。
4.不同的应用对计算机系统结构的设计提出了不同的要求
5.应用需求是促使计算机系统结构发展的最根本的动力
6.一些特殊领域:
2.系统结构的生命周期: