计算机系统结构.ppt_第1页
计算机系统结构.ppt_第2页
计算机系统结构.ppt_第3页
计算机系统结构.ppt_第4页
计算机系统结构.ppt_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机系统结构计算机系统结构 主讲:华中科技大学计算机学院主讲:华中科技大学计算机学院 胡迪青 email:h 2003.3.11计算机系统结构 教学计划 教材: 计算机系统结构(第二版 ) 郑纬民等 清华大学出版社,1998 参考书: 计算机系统的体系结构 李学干 清华大学出版社,2006 总学时:40 第1章:4 第2章:4 第3章:6 第4章:4 第5章:6 第6章:2 第7章:6 第8章:2 第9章:2 习题 :2 复习 :2 主讲教师: 胡迪青 电子邮件: 联系电话: 02787792283 2003.3.12计算机系统结构 第一章 课程介绍和基本概念(p1) 本章介绍计算机系统结构的一些基本知识。包括定 性知识和定量知识两大组内容。为了便于学习,本章各 节重新编号,与教材编号不同。 定性知识:本课程经常使用的一些名词概念,以及 对计算机的定性认识、分析方法。 定量知识:对计算机性能进行定量评价的几个重要 公式。 2003.3.13计算机系统结构 为什么学习本课程? 一些人将设计、制造计算机 每个人都将使用计算机 了解得越多,使用得越有效 本课程将使你能够更好地启迪用户 考虑整个计算机系统:处理器、存储器、i/o、存储系统、网络 本课程讨论和学习的中心问题就是处理、存储、传输 2003.3.14计算机系统结构 有何收益 了解如何使得程序运行的更快 了解应用程序需要哪种类型的硬件支持 了解技术、结构将如何变化 2003.3.15计算机系统结构 1.1 定性知识几个基本概念 1.1.1 什么是计算机系统结构?(p4) 英文名称:computer architecture 计算机系统结构(也叫“计算机体系结构”)课程:传授计算机整机( 硬软件统一条件下)设计的重大技术知识。 architecture的英文原义是“建筑学” “计算机系统结构”作为事物名称:使用者必须了解的机器外部特性知 识(广义定义)。在本课程中“使用者”目前特指最低级语言的程序员 ,“外部特性”特指整个硬件的外部特性(狭义定义)。 不同的时期对计算机系统结构有着不同的定义 2003.3.16计算机系统结构 计算机系统结构的定义变化 五十年代六十年代:计算机组织与系统结构课程 计算机算逻设计 七十年代八十年代:计算机组织与系统结构课程 指令系统设计,特别是针对编译的isa设计 九十年代:计算机组织与系统结构课程 cpu设计、存储系统、i/o系统、多处理器、网络等 二十一世纪:计算机组织与系统结构课程 自适应系统?自组织结构?dna系统/量子计算机? 2003.3.17计算机系统结构 “计算机系统结构”狭义定义包含的内容(p4) 1.数据表示(硬件能够直接识别和处理的数据类型和格式等); 2.寻址方式(包括最小寻址单位、寻址方式的种类、表示和地址计算等); 3.寄存器组织(包括各种寄存器的配置数目和功能定义); 4.指令系统(包括机器指令的操作类型和格式、指令间的排序方式和控制机 构等); 5.存储系统(包括编址方式、存储容量、最大编址空间等); 6.中断机构(中断源的分类管理和中断服务功能设计); 7.机器工作状态(如管态、目态等)的定义和切换; 8.输入/输出子系统结构与管理; 9.信息保护手段及其实现。 2003.3.18计算机系统结构 透明性概念:本来存在的事物或特性从某个角度 去看好象不存在。 这里指使用者可以不了解的知识。 例如:浮点数表示、乘法指令 对高级语言程序员、应用程序员来讲,是透明的 对汇编语言程序程序员、机器语言程序员来讲,是不透明的 例如:数据总线宽度,微程序 对汇编语言程序员,机器语言程序员来讲,是透明的 对硬件设计者,计算机维护人员来讲,是不透明的 2003.3.19计算机系统结构 其他重要名词概念(自学) 1.计算机组成(计算机系统结构的逻辑实现)(p5); 2.计算机实现(计算机组成的物理实现)(p5); 3.计算机系统设计的3种主要方法 (“由下而上”、“由上而下”、“由中间开始”)(p14); 4.系列机(具有相同体系结构,不同组成和实现的一系列计算机)(p23) ; 5.兼容性(程序不经修改或少量修改就可以运行在其他计算机环境)(p24) ; 6.模拟(宿主机用一段程序去解释虚拟机的指令)(p24); 7.仿真(宿主机用一段微程序支解释虚拟机的指令)(p24); 8.虚拟机(被模拟或仿真的计算机)(p24); 9.宿主机(模拟或仿真其他计算机的计算机)(p24); 10.并行性(求解一个问题的若干操作在时间安排上的可重叠性)。 2003.3.110计算机系统结构 2003.3.111计算机系统结构 第5级 专用应用语言机器 特定应用用户 (使用特定应用语言) (经应用程序翻译成高级语言) 第4级 通用高级语言机器 高级语言程序员(使用通用高级语言) (经编译程序翻译成汇编语言) 第3级 汇编语言机器 汇编语言程序员 (使用汇编语言) (经汇编程序翻译成机器语言、操作系统原语) 第2级 操作系统语言机器 操作系统用户 (使用操作系统原语) (经原语解释子程序翻译成机器语言) 第1级 传统机器语言机器 传统机器程序员(使用二进制机器语言) (由微程序解释成微指令序列) 第0级 微指令语言机器 微指令程序员 (使用微指令语言) (由硬件译码器解释成控制信号序列) 图1.1 计算机系统的多级层次模型 1.1.2 计算机系统的多级层次模型(p3) 2003.3.112计算机系统结构 1.1.3 冯.诺依曼(von neumann)型机器的特点(p22) 传统计算机又称为冯.诺依曼型机器,它由运算器、控制器、存储器、 输入设备和输出设备5部分组成 运算器 (alu) 控制器 存储器 输入设备输出设备 冯诺依曼原理:程序由指令组成,并和数据一起存放在计算机中,机器 一启动,能按照程序指定的逻辑顺序把指令从存储器中读出来逐条执行 ,自动完成由程序所描述的处理工作。 2003.3.113计算机系统结构 其结构具有如下特点: 以运算器为数据流动中枢,以控制器为控制命令中枢; 存储程序并且执行,程序象数据一样可以修改; 存储器按地址访问,线性顺序编址; 程序顺序执行; 指令由操作码与操作数两部分组成; 数据用二进制编码; 机器由硬件与软件组成,硬件功能不能改变。 2003.3.114计算机系统结构 1.1.4 现代计算机系统的分类(flynn分类法,p6) 按照指令流和数据流的多倍性状况把计算机分为: 1.单指令流单数据流(sisd-single instruction stream single data stream) 2.单指令流多数据流(simd-single instruction stream multiple data stream) 3.多指令流单数据流(misd-multiple instruction stream single data stream) 4.多指令流多数据流(mimd-multiple instruction stream multiple data stream) 思考题(不交):p32,题7,题8 ,题9 。 2003.3.115计算机系统结构 sisd:包括单功能部件处理机,多功能部件处理机,流 水 线处理机 标量流水线处理机 cupumm cu:控制部件 pu:处理部件 mm:存储器模块 is:指令流 ds:数据流 is is ds 2003.3.116计算机系统结构 simd:包括并行处理机,阵列处理机,向量处理机,超标量处理机 ,超流水线处理机,即多个pu按一定的方式互连,在同一个cu控制 下,并行的对多个数据进行处理。 从cu看,指令串行执行,从pu看,数据并行执行 cu pu3 pu2 pu1 mm3 mm2 mm1 is is ds1 ds2 ds3 2003.3.117计算机系统结构 mimd:多处理机系统 cu2 cu1 cunpun pu2 pu1 mmn mm2 mm1 is1is1 is2is2 isn ds1 isn ds2 dsn 2003.3.118计算机系统结构 misd:几条指令对同一数据进行不同的处理,实际不存在 cu1 cu2 cunpun pu2 pu1 mm1mm2mmn is1is1 is2 isn is2 isn ds ds 2003.3.119计算机系统结构 (1) 分类太粗 在simd中包括有多处理机; 对流水线处理机的划分不明确,标量流水线为sisd, 向量流水线为simd。 (2) 根本问题是把两个不同等级的功能并列对待 通常,数据流受指令流控制,从而造成misd不存在。 其它分类方法简介 a) 冯泽云分类方法:根据并行度进行分类(p6 ) b) handler 分类法:根据并行度和流水线分类 flynn分类法的局限性 2003.3.120计算机系统结构 1.2 定量知识3个性能公式 系统结构的性能改善的主要目标: “快” 提高系统的 性能 器件快: 器件的发展会受到器件自身制造工艺的影响,有其 极限存在 结构快: 处理:采用并行处理的方式(指令、时间、空间) 存储: cache,存储容量大,可靠性高 传输: 传输快,准确 2003.3.121计算机系统结构 1.2.1 amdahl定律(加快经常性事件原理,p9) 在设计系统时,一般而言,经常性事件的处理较为简单,且经常性 事件常和应用有关。 例如:事务处理 i/o 处理 图象处理、科学计算 处理器、内存的处理速度的提高 cpu内部(加mmx技术、加内部cache等) 在计算机系统结构中,加快经常性事件的速度原理是普遍原则, 具体如何确定、如何加快,用amdahl定律来解决 2003.3.122计算机系统结构 amdahl定律:系统中某一部件由于采用某种更快的执 行方式后整个系统性能的提高与这种执行方式的使用频 率或占用总执行时间的比例有关。 amdahl定律表述 2003.3.123计算机系统结构 可用如下方式表示: to ac b tn 其中: sn 全局加速比 a 可改进部分 b 改进后剩余的部分 c 不可改进的部分 to 原执行时间 (t old) tn 改进后的执行时间 (t new) 2003.3.124计算机系统结构 amdahl定律的分析:加速比和如下几个因素有关 1. 可改进部分占任务执行的总时间的比例 反映了是否“经常”发生 定义 其中: fe 被改进部分原执行时间占原来总时间的百分比。 2003.3.125计算机系统结构 2.改进部分采用改进措施后比没有采用改进措施前性能的提高倍数 反映了加快的“程度” 定义 其中: se 被改进部分的局部加速比。 2003.3.126计算机系统结构 则 2003.3.127计算机系统结构 分析 因为 所以反应了不可改变部分所占的时间 当 则 性能的提高幅度受到改进部分所占比例限制 故性能改善的极限受值的约束 if 2003.3.128计算机系统结构 amdahl定律的图形 从图1.2可以看出,增大se和fe对sn都有提升作用;但当fe固定时, 一味增大se对sn的作用会越来越不显著。 2003.3.129计算机系统结构 例题选讲(1) 例1.1 假设将某系统的某一部件的处理速度加快到10倍,但该部件 的原处理时间仅为整个运行时间的40,则采用加快措施后能使整 个系统的性能提高多少?(p10) 方法一:依 amdahl定律公式,已知:fe=0.4,se=10,求sn。 它说明局部(40%)的大幅度改进(10倍)对全局的作用要小得多(1.56倍)。 方法二: 4060 4 2003.3.130计算机系统结构 例1.2 (p10)amdahl定律公式 已知方案1 :fe1=0.2,se1=10,求sn1; 已知方案2 :fe2=0.5,se2=2,求sn2 。 方法一:采用fpsqr方案时 它说明大范围的小幅度改进(方案2)效果可能更好。 采用fp方案时 方法二: 20805050 225 2003.3.131计算机系统结构 amdahl 定律的广泛应用 1) amdahl定理:加快经常性事件 2) 要能识别什么是“经常性事件” 3) “经常性事件”与应用环境有关,不同的环境有不同的 经常性事件。 4) 不同类型的经常性事件可能有不同的加速方法。 5) 计算机系统结构中的经常性事件及其加速方法 指令系统(第二章) 经常性事件:取 加快方法:a) huffman编码,使用频度高者用短指令 b) risc 2003.3.132计算机系统结构 经常性事件:信息的存取 加速方法:a) 使用更快的存储器 b) 使用cache c) 使用nr(network ram) 输入/输出系统(第四章) 经常性事件:输入/输出 加速方法: a) 更高速的磁盘 b) 更高速的接口 c) 更快速的方法 程序查询 中断 dma d) 链路聚合 (trunk ) 存储系统(第三章) 2003.3.133计算机系统结构 经常性事件:指令处理 加速方法: a) 流水线 b) 多处理机 c) 向量机 d) simd e) 集群系统 f) 更快速的cpu 指令处理(第五、六、八、九、十章) 2003.3.134计算机系统结构 1.2.2 cpi与程序执行时间te(p11) 概念介绍: cpu时间:一个程序所花的cpu时间,指cpu的执行时间,不 包括i/o的等待时间 时钟周期:由于计算机的时钟速度是固定的,它的运行周期 称为时钟周期 2003.3.135计算机系统结构 定义: cpi(cycle per instruction):每条指令执行时所花 费的平均时钟周期数 cpicpu时钟周期数/ic cpu时钟周期数cpiic 则 cpu时间(cpiic)/频率 2003.3.136计算机系统结构 分析:cpu的性能由cpi、ic、频率三方面决定 f:取决于硬件技术和组织 cpi:取决于系统结构和指令集,反映了cpu的结构性能 ic:取决于系统的指令集和编译技术 举例: 8088 cpi20 80486 cpi2 pentium cpi1 pii cpi0.3 2003.3.137计算机系统结构 cpi是衡量cpu执行指令效率的重要指标。让我们先考虑一个标准测 速程序的全部执行时间te和其中所有第i种指令的累计时间ti,易知 2003.3.138计算机系统结构 例题选讲(2) 例1.3(p11) cpi公式,注意该公式中的指令数百分比不同于amdahl定律中的 时间百分比fe,避免用错。 已知: icfp / ic = 25%,ic非fp / ic = 75%; ic fpsqr / ic = 2%,ic非fpsqr / ic = 98%。 改进前:cpi fp = 4.0,cpi非fp = 1.33; cpi fpsqr = 20,cpi非fpsqr = ? 改进后:cpi fp = 2.0, cpi非fp = 老值; cpi fpsqr = 2.0,cpi非fpsqr = 老值。 求: 两种方案改进后的cpi。 分析: 方案1缺一个条件cpi非fpsqr ,但改进前用两种方法算出 的cpi应该是相同的,所以由 cpi 老 = cpi fp icfp / ic+ cpi非fp ic非fp / ic = cpi fpsqr icfpsqr / ic+ cpi非fpsqr ic非fpsqr / ic 2003.3.139计算机系统结构 解出cpi非fpsqr = 80 / 49 现在分别用两种方案改进后的参数代入式: 方案一: 40.25+1.330.75 = 200.02+ cpi非fpsqr 0.98 算出新的cpi分别为1.64和1.5,显然cpi值较小的方案2较好。 方案二: 254751.33 fp 252 2209880/49 fpsqr 22 2003.3.140计算机系统结构 分析 另一个公式较容易理解: 教材的解法中有两个小公式值得注意,一个是: 2003.3.141计算机系统结构 1.2.3 每秒百万指令数mips与每秒百万浮点数mflops( p15) 衡量计算机的最主要的性能指标是 性能、成本 性能指标: 响应时间(response time) 完成一个任务的全部时间,包括 磁盘访问时间、存储器访问时间、i/o访问时间等 (从用户的角度看问题) 吞吐率(throughout) 单位时间内完成的任务数,bytes/s (从系统管理员的角度看问题) 2003.3.142计算机系统结构 近十年来在性能和成本上发生的变化 性能: 技术工艺的进步 cmos vlsi在成本和和性能上超越了较老的工艺技术(ttl, ecl) 计算机体系结构的进步,改进了低端系统的性能 risc、superscalar、raid等等 价格: 下述原因降低了成本 开发更简单 cmos vlsi: 系统更小、部件更少 容量更大 cmos vlsi: 同样的设备消耗10,000对100,000,000元件 功能 联网/局部互联技术的高速发展 2003.3.143计算机系统结构 衡量机器性能的唯一可靠的标准就是真正的执行程序的时间, 可用如下方法表示: mips: million instructions per second 每秒百万条指令数 例子:pentiumii 450的cpi0.5,计算该处理机的运算速度。 解: 已知 cpi 0.5 f = 450mhz mips = f106/cpi = 450106106/0.5 = 900mips 2003.3.144计算机系统结构 mips的三个缺陷: a) mips依赖于指令集,所以用它来比较指令集不同的 机器的性能好坏是不准确的。 b) 在同一台机器上,它因程序不同而变化。 c) 它可能与性能相反。如具有可选硬件浮点运算部件 的机器。 2003.3.145计算机系统结构 mfilops :million floating operation per second 每秒百万次浮点操作次数 分析: mflops只能用来衡量机器浮点操作的性能,而不能体现 机器的总体性能 优点:基于操作而非指令,可以用来比较两种不同的机器。 缺点:它并不可靠,因为不同的机器上浮点运算集不同;依赖 于操作类型;单个程序的值并不能反映机器的性能。 2003.3.146计算机系统结构 例题选讲(3) 例1.4(p12) te公式,其中cpi用相应的公式代换 对a机器,已知cpi转=2,i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论