计算机系统结构 课程介绍 · Computer Architecture计算机系统結袍计]机体系結构 “建筑学”、“建筑物的设计或式样”,通常是指一个系统的外貌 研究内容: 从外部来研究计算机系统 使用者所看到的物理计算机的抽象 编写出能够在机器上正确运行的程序所必须了解到的计算机的属性 软硬件功能分配及分界面的确定 学习目的 建立计算机系统的完整概念 学习计算机系统的分析方法和设计方法 掌握新型计算机系统的基本结构及其工作原理 学科方向:是全国重点学科 级学科一个:计算机科学与技术 级学科三个:计算机系统结构、计算机软件、计算机应用技术 ·与其他学科的交叉 主要包括:计算机组成原理、计算机操作系统、汇编语言、数据结构、 微机原理、高级语言等 新内容:超标量处理机、超流水线计算机、向量处理机、并行处理机、 多处理机等 交叉点:提高、建立完整概念 课程安排 课内:64学时,实验:16学时,课外:课内外比例1:2 除完成作业和实验外,还要多看参考书 实验DLX处理机 实验原理、实验内容及实验要求:教材第十二章 计算机系统结构正处于变革时期 软件、系统结构、组成技术,两头发展快、中间慢 非冯计算机正兴起 系统结构的发展时期已经到来 ·教材:计算机系统结构,清华大学出版社,第二版 主要参考书: 1. Patterson D A, Hennessy J L, Computer Architecture: A Quantitative Approach 2 Ed. San Francisco: Morgan Kaufmann Publishers, 1995. 2.李学干,苏东庄,计算机系统结构,西安电子科技大学出版社,1991年。 3.李勇,刘恩林,计算机体系结构,国防科技大学出版社,198年, 4. Kai hwang,高等计算机系统结构并行性可扩展性可编程性, 清华大学出版社
1 计算机系统结构 课程介绍 • Computer Architecture 计算机系统结构 计算机体系结构 “建筑学”、“建筑物的设计或式样”,通常是指一个系统的外貌。 • 研究内容: 从外部来研究计算机系统 使用者所看到的物理计算机的抽象 编写出能够在机器上正确运行的程序所必须了解到的计算机的属性 软硬件功能分配及分界面的确定 • 学习目的: 建立计算机系统的完整概念 学习计算机系统的分析方法和设计方法 掌握新型计算机系统的基本结构及其工作原理 • 学科方向:是全国重点学科 一级学科一个:计算机科学与技术 二级学科三个:计算机系统结构、计算机软件、计算机应用技术 • 与其他学科的交叉 主要包括:计算机组成原理、计算机操作系统、汇编语言、数据结构、 微机原理、高级语言等 新内容:超标量处理机、超流水线计算机、向量处理机、并行处理机、 多处理机等 交叉点:提高、建立完整概念 • 课程安排 课内:64 学时, 实验:16 学时, 课外:课内外比例 1:2 除完成作业和实验外,还要多看参考书 • 实验 DLX处理机 实验原理、实验内容及实验要求:教材第十二章 • 计算机系统结构正处于变革时期 软件、系统结构、组成技术,两头发展快、中间慢 非冯计算机正兴起 系统结构的发展时期已经到来 • 教材:计算机系统结构,清华大学出版社,第二版 主要参考书: 1.Patterson D A, Hennessy J L, Computer Architecture: A Quantitative Approach 2 Ed. San Francisco: Morgan Kaufmann Publishers, 1995. 2.李学干,苏东庄,计算机系统结构,西安电子科技大学出版社,1991 年。 3.李勇,刘恩林,计算机体系结构,国防科技大学出版社,1988 年。 4.Kai Hwang,高等计算机系统结构 并行性 可扩展性 可编程性, 清华大学出版社
第一章基本概念 1.1计算机系统结构的定义 1.2计算机系统的评价标准 1.3计算机系统的设计方法 1.4计算机系统结构的发展 .5计算机系统的分类 1.1计算机系统结构的定义 1.1.1两种定义 1、定义一: Amdahl于1964年在推出IBM360系列计算机时提出 程序员所看到的计算机系统的属性,即概念性结构和功能特性 ν程序员:汇编语言、机器语言、编译程序、操作系统 ν看到的:编写出能够在机器上正确运行的程序所必须了解到的 概念结构: 主存储器 主存控制器 CP U IO P IOP 打印机 磁盘机 卡片机 磁带机 功能特性:指令系统及其执行模式 数据表示:硬件能够直接认别和处理的数据类型和格式; 寻址方式:最小寻址单位、寻址方式的种类和地址运算等 ·寄存器组织:操作数寄存器、变址寄存器、控制寄存器及专用寄存器的定义 数量和使用规则等; 指令系统:机器指令的操作类型、格式,指令间的排序和控制机制等; 中断系统:中断类型、中断级别和中断响应方式等
2 第一章 基本概念 1.1 计算机系统结构的定义 1.2 计算机系统的评价标准 1.3 计算机系统的设计方法 1.4 计算机系统结构的发展 1.5 计算机系统的分类 1.1 计算机系统结构的定义 1.1.1 两种定义 1、定义一:Amdahl 于 1964 年在推出 IBM360 系列计算机时提出: 程序员所看到的计算机系统的属性,即概念性结构和功能特性 程序员:汇编语言、机器语言、编译程序、操作系统 看到的:编写出能够在机器上正确运行的程序所必须了解到的 概念结构: 主存储器 主存控制器 CPU IOP IOP 打印机 磁盘机 卡片机 磁带机 终 端 功能特性:指令系统及其执行模式 • 数据表示:硬件能够直接认别和处理的数据类型和格式; • 寻址方式:最小寻址单位、寻址方式的种类和地址运算等; • 寄存器组织:操作数寄存器、变址寄存器、控制寄存器及专用寄存器的定义、 数量和使用规则等; • 指令系统:机器指令的操作类型、格式,指令间的排序和控制机制等; • 中断系统:中断类型、中断级别和中断响应方式等;
存储系统:最小编址单位、编址方式、主存容量、最大寻址空间等 处理机工作状态:定义和切换方式,如管态和目态等 输入输出系统:连接方式、数据交换方式、数据交换过程的控制等 ·信息保护,包括信息保护方式和硬件对信息保护的支持等 2、透明性概念 本来存在的事物或属性,从某种角度看似乎不存在 例如:浮点数表示、乘法指令 对高级语言程序员、应用程序员 透明 对汇编语言程序员、机器语言程序员不透明 例如:数据总线宽度、微程序 对汇编语言程序员、机器语言程序员透明 对硬件设计者、计算机维修人员 不透明 3、定义二 计算机系统结构主要研究软硬件功能分配和对软硬件界面的确定 计算机系统由软件、硬件和固器组成,它们在功能上是同等的 同一种功能可以用硬件实现,也可以用软件或固件实现 不同的组成只是性能和价格不同。 1.1.2计算机系统的组成 计算机组成是指计算机系统结构的逻辑实现,主要包括 确定数据通路的宽度 确定各种操作对功能部件的共享程度 ●确定专用的功能部件 ·确定功能部件的并行度 设计缓冲和排队策略 设计控制机构 确定采用何种可靠性技术 1.3计算机系统的实现 计算机实现是指计算机组成的物理实现,包括 处理机、主存储器等部件的物理结构 器件的集成度和速度 专用器件的设计 ·器件、模块、插件、底版的划分与连接 信号传输技术 ●电源、冷却及装配技术,相关制造工艺及技术等 计算机系统结构、计算机组成和计算机实现是三个不同的概念,但随着技术、 器件和应用的发展,三者之间的界限越来越模糊
3 • 存储系统:最小编址单位、编址方式、主存容量、最大寻址空间等; • 处理机工作状态:定义和切换方式,如管态和目态等; • 输入输出系统:连接方式、数据交换方式、数据交换过程的控制等; • 信息保护,包括信息保护方式和硬件对信息保护的支持等。 2、透明性概念 本来存在的事物或属性,从某种角度看似乎不存在 例如:浮点数表示、乘法指令 对高级语言程序员、应用程序员 透明 对汇编语言程序员、机器语言程序员 不透明 例如:数据总线宽度、微程序 对汇编语言程序员、机器语言程序员 透明 对硬件设计者、计算机维修人员 不透明 3、定义二: 计算机系统结构主要研究软硬件功能分配和对软硬件界面的确定 • 计算机系统由软件、硬件和固器组成,它们在功能上是同等的。 • 同一种功能可以用硬件实现,也可以用软件或固件实现。 • 不同的组成只是性能和价格不同。 1.1.2 计算机系统的组成 计算机组成是指计算机系统结构的逻辑实现,主要包括: • 确定数据通路的宽度 • 确定各种操作对功能部件的共享程度 • 确定专用的功能部件 • 确定功能部件的并行度 • 设计缓冲和排队策略 • 设计控制机构 • 确定采用何种可靠性技术 1.1.3 计算机系统的实现 计算机实现是指计算机组成的物理实现,包括: • 处理机、主存储器等部件的物理结构 • 器件的集成度和速度 • 专用器件的设计 • 器件、模块、插件、底版的划分与连接 • 信号传输技术 • 电源、冷却及装配技术,相关制造工艺及技术等 计算机系统结构、计算机组成和计算机实现是三个不同的概念,但随着技术、 器件和应用的发展,三者之间的界限越来越模糊
1.1.4计算机系统的层次结构 1、虚拟机概念 ●从不同角度所看到的计算机系统的属性是不同的 高级语言程序员、汇编语言程序员、系统管理员、硬件设计者 大部分人对计算机的认识只需要在某一个层次上 广义语言 虚拟计算机 解释或编译 作用对象 观察者 2、层次结构 第0级由硬件实现,第1级由微程序实现,第2级至第6级由软件实现 由软件实现的机器称为:虚拟机 第2级是传统指令系统(机器语言)机器 第3级是操作系统机器。操作系统是运行在第2级上的解释程序。 第4级是汇编语言机器。 第5级是高级语言机器。 第6级是应用语言机器 ·从学科领域来划分:第0和第1级属于计算机组织与结构,第3至第5级 是系统软件,第6级是应用软件。 ·它们之间仍有交叉。第0级要求一定的数字逻辑基础;第2级涉及汇编语 言程序设计的内容;第3级与计算机系统结构密切相关。在特殊的计算机 系统中,有些级别可能不存在
4 1.1.4 计算机系统的层次结构 1、虚拟机概念 • 从不同角度所看到的计算机系统的属性是不同的 高级语言程序员、汇编语言程序员、系统管理员、硬件设计者 大部分人对计算机的认识只需要在某一个层次上 广义语言 虚拟计算机 解释或编译 作用对象 观察者 2、层次结构 第 0 级由硬件实现,第 1 级由微程序实现,第 2 级至第 6 级由软件实现 由软件实现的机器称为:虚拟机 第 2 级是传统指令系统(机器语言)机器。 第 3 级是操作系统机器。操作系统是运行在第2级上的解释程序。 第 4 级是汇编语言机器。 第 5 级是高级语言机器。 第 6 级是应用语言机器。 • 从学科领域来划分:第 0 和第 1 级属于计算机组织与结构,第 3 至第 5 级 是系统软件,第 6 级是应用软件。 • 它们之间仍有交叉。第 0 级要求一定的数字逻辑基础;第 2 级涉及汇编语 言程序设计的内容;第 3 级与计算机系统结构密切相关。在特殊的计算机 系统中,有些级别可能不存在
应用语言 第6级 应用程序 应用程序 息处理系统 用 高级语言 第5级 高级语言 1解释程序 可执行程序 高级语言程序员 「汇编语言 第4级 汇编语言 汇编程序 可执行程序 汇编语言程序员 系统原语 键盘命令 第3级 操作系统 操作系统 系统资源 系统操作员 指令系统 第2级 机器语言 中央处理机[目标程序]—机器语言程序员 指令时序 第1级 微程序控制 微程序控制「寄存器逻辑-逻辑设计员 「[操作时序 第0级 硬联逻辑 硬联逻辑 逻辑线路 硬件设计员
5 应用语言 第 6 级 应用程序 应用程序 信息处理系统 用 户 高级语言 第 5 级 高级语言 解释程序 编译程序 可执行程序 高级语言程序员 汇编语言 第 4 级 汇编语言 汇编程序 可执行程序 汇编语言程序员 系统原语 键盘命令 第 3 级 操作系统 操作系统 系统资源 系统操作员 指令系统 第 2 级 机器语言 中央处理机 目标程序 机器语言程序员 指令时序 第 1 级 微程序控制 微程序控制 寄存器逻辑 逻辑设计员 操作时序 第 0 级 硬联逻辑 硬联逻辑 逻辑线路 硬件设计员
2计算机系统的评价标准性能和价格 1.2.1性能评测的常用方法以运算速度为主 1、时钟频率(主频):用于同类处理机之间 如: Pentium I/450比 Pentium/300快50%, 2、指令执行速度一种很经典的表示方法 e MIPS Million Instructions Per Second), KIPS GIPS TIPS 指令条数 MIPS =IPC×Fz 执行时间×10°CPI 其中:Fz为处理机的工作主频 CPI( Cycles Per Instruction)为每条指令所需的平均时钟周期数, IPC为每个时钟周期平均执行的指令条数 例1:计算 PentiumII450处理机的运算速度 解:由于 Pentium450处理机的IPC=2(或CPI=0.5),Fz=450MHz MIPSPentium450=IPC×FZ=2×450=900MPS ●主要缺点: (1)不同指令的速度差别很大 (2)指令使用频度差别很大 (3)有相当多的非功能性指令 3、等效指令速度:吉普森( Gibson)法 等效指令执行时间7=∑(1×T) 等效指令速度MPS MIPS 等效CP=之(CPx) 其中:W:指令使用频度,i:指令种类 静态指令使用频度:在程序中直接统计 动态指令使用频度:在程序执行过程中统计 在计算机发展的早期,用加法指令的运算速度来衡量计算机的速度 通常:加、减法50%,乘法15%,除法5%,程序控制15%,其他15% 例2:我国最早研制的小型计算机DJS-130,定点16位,加法速度每秒50万次, 但没有硬件乘法和除法等指令。用软件实现乘法和除法,速度降低100倍 左右,求定点等效速度为。 解: 等效指令速度MIPS=1/ 0.80 +x020 )=0.02MIPS 0.50.5/100 即每秒2万次,由于乘法和除法用软件实现,等效速度降低了25倍
6 1.2 计算机系统的评价标准 性能和价格 1.2.1 性能评测的常用方法 以运算速度为主 1、时钟频率(主频):用于同类处理机之间 如:PentiumⅡ/450 比 PentiumⅡ/300 快 50%,… 2、指令执行速度 一种很经典的表示方法 • MIPS(Million Instructions Per Second),KIPS、GIPS、TIPS MIPS 10 Fz CPI IPC Fz 6 = = = 指令条数 执行时间 其中:Fz 为处理机的工作主频, CPI(Cycles Per Instruction)为每条指令所需的平均时钟周期数, IPC 为每个时钟周期平均执行的指令条数。 例 1:计算 PentiumII 450 处理机的运算速度。 解:由于 PentiumII 450 处理机的 IPC=2(或 CPI=0.5),Fz=450MHz MIPSPentiumII 450 == IPC Fz = 2 450 = 900MIPS • 主要缺点: (1)不同指令的速度差别很大 (2)指令使用频度差别很大 (3)有相当多的非功能性指令 3、等效指令速度:吉普森(Gibson)法 其中:Wi:指令使用频度,i:指令种类 静态指令使用频度:在程序中直接统计 动态指令使用频度:在程序执行过程中统计 在计算机发展的早期,用加法指令的运算速度来衡量计算机的速度。 通常:加、减法 50%,乘法 15%,除法 5%,程序控制 15%,其他 15% 例 2:我国最早研制的小型计算机 DJS-130,定点 16 位,加法速度每秒 50 万次, 但没有硬件乘法和除法等指令。用软件实现乘法和除法,速度降低 100 倍 左右,求定点等效速度为。 解: 即每秒 2 万次,由于乘法和除法用软件实现,等效速度降低了 25 倍。 等效指令速度MIPS 1/ ( ) 0.80 0.5 0.20 0.5 /100 = + = 0.02MIPS 等效指令执行时间 等效指令速度 等效 ( ) T W T MIPS W MIPS CPI CPI W i i i n i i i n i i i n = = = = = = ( ) 1 1 1 1
例3:如果浮点开平方操作 FPSQR的比例为2%,它的CPI为100,其他浮点操作 的比例为23%,它的CPI=4.0,其余指令的CPI=1.33,计算该处理机的 等效CPI。如果 FPSQR操作的CPI也为4.0,重新计算等效CPI 解:等效CPI1=100×2%+4×23%+1.33×75%=3.92 等效CPI2=4×25%+1.33×75%=2.00 由于改进了仅占2%的 FPSQR操作的CPI,使等效速度提高了近一倍 ●指令执行速度的几种平均方法 上述2中的指令执行速度又称为算术平均速度 上述3中的等效指令执行速度又称为加权平均速度,或调和平均速度 几何平均速度: ETR 其中: ETR (execution time ratio),n指不同的程序 几何平均速度与机器无关,与程序的执行时间无关。 4、数据处理速率PDR( processing data rate) PDR=L/R 其中:L=0.85G+0.15H+0.4J+0.15K;R=0.85M+0.09N+0.06P 其中:G是每条定点指令的位数 M是平均定点加法时间 H是每条浮点指令的位数 N是平均浮点加法时间 J是定点操作数的位数 P是平均浮点乘法时间 K是浮点操作数的位数 另外还规定:G>20位,H>30位;从主存取一条指令的时间等于取一个 字的时间;指令和操作数都存放在同一个主存,无变址或间址操作;允许有先行 或并行取指令功能,此时选用平均取指令时间。 PDR主要用来对CPU和主存储器的速度进行度量,它没有涉及到 cache和多 功能等。因此,PDR不能度量机器的整体速度。 5、核心程序法 把应用程序中用得最多频繁的那部分核心程序作为评价计算机性能的标准 程序。称为基准程序 benchmark 整数测试程序: Dhrystone 用C语言编写,100条语句。包括:各种赋值语句,各种数据类型和数据区, 各种控制语句,过程调用和参数传送,整数运算和逻辑操作 VAX-11/780的测试结果为每秒1757个 Dhrystones,即 IVAX MIPS=1757Dhrystones/Second 浮点测试程序: Linpack 用 FORTRAN语言编写,主要是浮点加法和浮点乘法操作。 用 MFLOPS( Million Floating Point Operations Per Second)表示 GFLOPS、 TFLOPS Whetstone基准测试程序 用 FORTRAN语言编写的综合性测试程序,主要包括:浮点运算、整数算术运 算、功能调用、数组变址、条件转移、超越函数。 测试结果用 Twips表示
7 例 3:如果浮点开平方操作 FPSQR 的比例为 2%,它的 CPI 为 100,其他浮点操作 的比例为 23%,它的 CPI=4.0,其余指令的 CPI=1.33,计算该处理机的 等效 CPI。如果 FPSQR 操作的 CPI 也为 4.0,重新计算等效 CPI。 解: 等效 CPI1=100 2% + 4 23% + 1.33 75%=3.92 等效 CPI2=4 25%+1.33 75%=2.00 由于改进了仅占 2%的 FPSQR 操作的 CPI,使等效速度提高了近一倍 • 指令执行速度的几种平均方法 上述2中的指令执行速度又称为算术平均速度 上述3中的等效指令执行速度又称为加权平均速度,或调和平均速度 几何平均速度: 其中:ETR(execution time ratio),n指不同的程序 几何平均速度与机器无关,与程序的执行时间无关。 4、数据处理速率 PDR(processing data rate) PDR=L/R 其中:L=0.85G+0.15H+0.4J+0.15K;R=0.85M+0.09N+0.06P 其中:G 是每条定点指令的位数 M 是平均定点加法时间 H 是每条浮点指令的位数 N 是平均浮点加法时间 J 是定点操作数的位数 P 是平均浮点乘法时间 K 是浮点操作数的位数 另外还规定:G > 20 位,H > 30 位;从主存取一条指令的时间等于取一个 字的时间;指令和操作数都存放在同一个主存,无变址或间址操作;允许有先行 或并行取指令功能,此时选用平均取指令时间。 PDR 主要用来对 CPU 和主存储器的速度进行度量,它没有涉及到 cache 和多 功能等。因此,PDR 不能度量机器的整体速度。 5、核心程序法 把应用程序中用得最多频繁的那部分核心程序作为评价计算机性能的标准 程序。称为基准程序 benchmark • 整数测试程序:Dhrystone 用 C 语言编写,100 条语句。包括:各种赋值语句,各种数据类型和数据区, 各种控制语句,过程调用和参数传送,整数运算和逻辑操作。 VAX-11/780 的测试结果为每秒 1757 个 Dhrystones,即: 1VAX MIPS=1757Dhrystones/Second • 浮点测试程序:Linpack 用 FORTRAN 语言编写,主要是浮点加法和浮点乘法操作。 用 MFLOPS(Million Floating Point Operations Per Second)表示 GFLOPS、TFLOPS • Whetstone 基准测试程序 用 FORTRAN 语言编写的综合性测试程序,主要包括:浮点运算、整数算术运 算、功能调用、数组变址、条件转移、超越函数。 测试结果用 Kwips 表示, G ETRi i n = n = 1
SPEC基准测试程序 System performance eva1 uation Cooperative 由30个左右世界知名计算机大厂商所支持的非盈利的合作组织,包括:IBM、 AT&T、BULL、 Compaq、CDC、DG、DEC、 Fujitsu、HP、 Intel、MPS、 Motorola、 SGI、SUN、 Unisys等 SPEC能够全面反映机器的性能,具有很高的参考价值 以AX-11/780的测试结果作为基数; SPEC1.01989年10月宣布,包含10个测试程序,程序量超过15万行,4 个定点程序,6个浮点程序;测试结果用 SPECint89和 SPECfp89表示 1992年,又增加10个测试程序,共有6个定点程序和14个浮点程序,测试 结果用 SPECint92和 SPECfp92表示。 1995年推出 SPECint'95和 SPECfp95 处理机 SPECint9s5sPC95处理机| SPECint95 spECfp295 PentiumlI45018.5 13.3 Celeron 333 10.20 PentiumII 450 18.7 Celeron 366 PentiumIII 500 20.6 14.7 Celeron 400 B456 10.70 1120 PientiumIII 55 Celeron 43 11.60 Celeron 300A 120 966 Celeron 466 17.0 12.00 ·TPC基准程序 Transaction Processing council(事务处理委员会) 成立于1988年,已有40多个成员;用于评测计算机的事务处理、数据库处 理、企业管理与决策支持等方面的性能 1989年10月、1990年8月和1992年7月发表了TPC-A、TPC-B和TPC-C 6、峰值速度 峰值指令速度MPS、GIPS、TPS 例如: Pentium1500,有3条指令流水线,1500MPS,每秒15亿次 个由8台机器组成的 Cluster,每台机器是4个 PentiumII500组成的SMP; 其峰值速度为48GIPS,每秒480亿次。 峰值浮点速度 MFLOPS、 GFLOPS、 TFLOPS 1.2.2其他性能 1.存储能力 寻址空间大小,26、22、22、20、 存储容量,速度,编址单位,编址方式,寻址方式 存储系统, Lookahead→ Cache→ Main memory→ Online storage →Off- line Storage 2.字长1~几百位 关键问题:指令字长与数据字长的协调 原因:程序与数据共用同一个主存储器 ·早期:由指令字长决定 当前:由数据字长决定,8的倍数,如:32位、64位等 可变字长:任意组合 8
8 • SPEC 基准测试程序 System performance evaluation Cooperative 由 30 个左右世界知名计算机大厂商所支持的非盈利的合作组织,包括:IBM、 AT&T、BULL、Compaq、CDC、DG、DEC、Fujitsu、HP、Intel、MIPS、Motolola、 SGI、SUN、Unisys 等; SPEC 能够全面反映机器的性能,具有很高的参考价值; 以 AX-11/780 的测试结果作为基数; SPEC1.0 1989 年 10 月宣布,包含 10 个测试程序,程序量超过 15 万行,4 个定点程序,6 个浮点程序;测试结果用 SPECint’89 和 SPECfp’89 表示。 1992 年,又增加 10 个测试程序,共有 6 个定点程序和 14 个浮点程序,测试 结果用 SPECint’92 和 SPECfp’92 表示。 1995 年推出 SPECint’95 和 SPECfp’95 处理机 SPECint’95 SPECfp’95 处理机 SPECint’95 SPECfp’95 PentiumII 450 18.5 13.3 Celeron 333 13.1 10.20 PentiumII 450 18.7 13.7 Celeron 366 14.1 10.70 PentiumIII 500 20.6 14.7 Celeron 400 15.1 11.20 PientiumIII 550 22.3 15.6 Celeron 433 16.1 11.60 Celeron 300A 12.0 9.66 Celeron 466 17.0 12.00 • TPC 基准程序 Transaction Processing Council(事务处理委员会) 成立于 1988 年,已有 40 多个成员;用于评测计算机的事务处理、数据库处 理、企业管理与决策支持等方面的性能。 1989 年 10 月、1990 年 8 月和 1992 年 7 月发表了 TPC-A、TPC-B 和 TPC-C。 6、峰值速度 • 峰值指令速度 MIPS、GIPS、TIPS 例如:PentiumIII 500,有 3 条指令流水线,1500 MIPS,每秒 15 亿次 一个由 8 台机器组成的 Cluster,每台机器是 4 个 PentiumIII 500 组成的 SMP; 其峰值速度为 48GIPS,每秒 480 亿次。 • 峰值浮点速度 MFLOPS、GFLOPS、TFLOPS 1.2.2 其他性能 1.存储能力 • 寻址空间大小,2 16、2 24、2 32、2 64、... • 存储容量,速度,编址单位,编址方式,寻址方式 • 存储系统,Lookahead Cache Main Memory Online Storage Off-line Storage 2.字长 1~几百位 • 关键问题:指令字长与数据字长的协调 原因:程序与数据共用同一个主存储器 • 早期:由指令字长决定 当前:由数据字长决定,8 的倍数,如:32 位、64 位等 可变字长:任意组合
3.数据类型 目前常用:定点、浮点、逻辑 ·已有类型:向量、串、栈、树、 发展方向:自定义 4、指令系统 CISC:复杂指令集计算机 RISC:精简指令集计算机 ·ⅥIW:超长指令字 5、输入输出能力 ·输入输出方式 中断系统 输入输出接口 6、兼容性 ·共分12级:0~11,0级为完全不兼容,11级为自身 7、保护和诊断能力 程序与数据的保护 ·诊断能力:检错、纠错、冗余、自诊断能力 可靠性:RAS技术,可靠性R、可用性A、可维护性S 1.2.3价格标准 1.价格与性能的关系: 根据摩尔定理:性能每10年提髙100倍,但价格基本不变 用同样的价格,五年之后能买到性能高十倍的机器 计算机系统每年的折旧率为75%左右 2.硬件与软件的价格比例: ·硬件的比例下降,软件的比例上升 ·目前软件价格已经超过硬件价格 3计算机系统的设计技术 软硬件取舍,软件兼容性设计方法,计算机系统设计过程 1.3.1软硬件取舍 软硬件的关系 理论上,有两种极端实现方法 全硬件机器,包括操作系统、高级语言、应用程序等 硬件只有1位加法和分支操作,其他都用软件实现 关键问题:性能与价格的关系,软硬件实现在功能上等效 计算机系统结构设计者的主要任务就是要确定软硬件的分界 软件、硬件和固件的功能分配
9 3.数据类型 • 目前常用:定点、浮点、逻辑、 • 已有类型:向量、串、栈、树、 • 发展方向:自定义 4、指令系统 • CISC:复杂指令集计算机 • RISC:精简指令集计算机 • VLIW:超长指令字 5、输入输出能力 • 输入输出方式 • 中断系统 • 输入输出接口 6、兼容性 • 共分 12 级:0~11,0 级为完全不兼容,11 级为自身 7、保护和诊断能力 • 程序与数据的保护 • 诊断能力:检错、纠错、冗余、自诊断能力 • 可靠性:RAS 技术,可靠性 R、可用性 A、可维护性 S 1.2.3 价格标准 1.价格与性能的关系: • 根据摩尔定理:性能每 10 年提高 100 倍,但价格基本不变 • 用同样的价格,五年之后能买到性能高十倍的机器 • 计算机系统每年的折旧率为 75%左右 2.硬件与软件的价格比例: • 硬件的比例下降,软件的比例上升 • 目前软件价格已经超过硬件价格 1.3 计算机系统的设计技术 软硬件取舍,软件兼容性设计方法,计算机系统设计过程。 1.3.1 软硬件取舍 1、软硬件的关系 • 理论上,有两种极端实现方法: 全硬件机器,包括操作系统、高级语言、应用程序等 硬件只有 1 位加法和分支操作,其他都用软件实现 • 关键问题:性能与价格的关系,软硬件实现在功能上等效 计算机系统结构设计者的主要任务就是要确定软硬件的分界, 软件、硬件和固件的功能分配
软件与硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多 发展趋势:硬件实现的比例越来越高,硬件所占的成本越来越高 软硬件比例 成本 硬件 软件 软件、 硬件 最少硬件目前计算机不可编程 年代 2、从价格因素考虑的软硬件取舍 设硬件设计费为Dh 软件设计费为Ds 硬件拷贝费为Ch 软件拷贝费为Cs R为软件重复出现次数(占用内存、占用介质) 当台数为V时,每台的硬件费用和软件费用之比为: Dh Ds (+Ch):(如+RCs) 由于:Dh>Ds,Ch>>Cs, 结论1:当R很大时,即经常使用的基本功能适宜用硬件实现 由于:Ds>Cs 结论2:当V很大时,即生产台数很多时适宜用硬件实现 另外,还要从处理机速度和国家需要等方面来考虑 3、从改进性能考虑的软硬件取舍 基本方法:加快经常性事件的执行速度 ● Amdahl定律:系统中某一部件由于采用某种更快的执行方式后整个系统性能 的提高与这种执行方式的使用频率或占总执行时间的比例有关 在 Amdahl定律中,加速比与两个因素有关: 可改进部分占用的时间 改进前整个任务的执行时间 它总小于1。 改进前改进部分的执行时间 改进后改进部分的执行时间’E总大于1 改进后整个任务的执行时间为:Tn=T(1-Fe+he 其中T。为改进前的整个任务的执行时间
10 • 软件与硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多 • 发展趋势:硬件实现的比例越来越高,硬件所占的成本越来越高 2、从价格因素考虑的软硬件取舍 设硬件设计费为 Dh 软件设计费为 Ds 硬件拷贝费为 Ch 软件拷贝费为 Cs R 为软件重复出现次数(占用内存、占用介质) 当台数为 V 时,每台的硬件费用和软件费用之比为: 由于:Dh >> Ds,Ch >> Cs, 结论 1:当 R 很大时,即经常使用的基本功能适宜用硬件实现 由于:Ds >> Cs 结论 2:当 V 很大时,即生产台数很多时适宜用硬件实现 另外,还要从处理机速度和国家需要等方面来考虑。 3、从改进性能考虑的软硬件取舍 • 基本方法:加快经常性事件的执行速度 • Amdahl 定律:系统中某一部件由于采用某种更快的执行方式后整个系统性能 的提高与这种执行方式的使用频率或占总执行时间的比例有关。 在 Amdahl 定律中,加速比与两个因素有关: Fe = 可改进部分占用的时间 改进前整个任务的执行时间 ,它总小于 1。 Se = 改进前改进部分的执行时间 改进后改进部分的执行时间 ,它总大于 1。 改进后整个任务的执行时间为: T T Fe Fe Se n = o (1− + ) 其中 To为改进前的整个任务的执行时间。 成本 硬件 软件 年代 软硬件比例 软件 发展 硬件 最少硬件 目前计算机 不可编程 ( ):( ) Dh V Ch Ds V + + RCs