1、2018年10月8日星期一,计算机系统结构 第一章 基本概念,1,计算机系统结构,包仲贤兰州理工大学计算机与通信学院,计算机系统结构 第一章 基本概念,2,中国宫廷式,计算机系统结构 第一章 基本概念,3,欧洲哥特式,计算机系统结构 第一章 基本概念,4,阿拉伯风格,计算机系统结构 第一章 基本概念,5,计算机系统结构 第一章 基本概念,6,印度泰姬陵,计算机系统结构 第一章 基本概念,7,计算机系统结构 第一章 基本概念,8,计算机科学与技术系,9,1. 课程名称 Computer Architecture 计算机系统结构 计算机体系结构 建筑物的设计或式样, 通常指一个系统的外貌2. 研究
2、内容 从外部来研究计算机系统 使用者所看到的物理计算机的抽象 编写出能够在机器上正确运行的程序所必须了解到的计算机属性,计算机系统结构 第一章 基本概念,10,我们有没有必要学习计算机设计技术?,答案:肯定有必要,并且非常必要。放弃微处理器的设计与OS的研究和开发曾是我们的国策。后来已开始反省这一国策,提出开发自己的微处理器和OS。在今天后PC时代更有必要。因为在后PC时代,计算机的主要作用不再是独立使用的机器,而是一个应用系统或设备的组件(如马达一样),?,计算机系统结构 第一章 基本概念,11, 体系结构非常重要 从系统这一级来看计算机, 建立计算机系统概念, 总体设计(设计策略,注重原理
3、和方法), 站得高,看得远,讲得透,总体结构 总工程师,3. 本课程的意义,计算机系统结构 课程介绍,12,4. 学习目的学习体系结构的目的是什么?学习设计计算机的技术建立计算机系统的完整概念学习计算机系统的分析方法和设计方法了解计算机系统的最新研究成果设计有我国自主知识产权的计算机,计算机系统结构 课程介绍,13,5. 与其他学科的交叉学科交叉:计算机组成、操作系统、汇编语言、数据结构、微计算机技术、计算机网络、新内容:超标量处理机、超流水线处理机、VLIW处理机、向量处理机、并行处理机、多处理机、互连网络、计算机系统结构正处于变革时期 软件-系统结构-实现技术, 两头发展快中间慢 非冯计算
4、机正兴起,计算机系统结构 课程介绍,14,6. 课程安排课内:32学时,课内外比例:课内1:课外1除完成作业之外,还要多看参考书了解国内外最新研究成果7. 教材和参考书教材: 郑伟民 汤志忠 计算机系统结构(第二版) ,清华大学出版社,计算机系统结构 课程介绍,15,参考书:(1)David A. Patterson and John L. Hennessy, Computer Architecture: A Quantitative Approach 3 Ed. San Francisco: Morgan Kaufmann Publishers 中文:计算机系统结构:一种定量的方法(2)Ka
5、i Hwang,Advanced Computer Acrchitecture Parallelism Scalability Programmability 中文:高等计算机系统结构:并行性 可扩展性 可编程性, 清华大学出版社、广西科学技术出版社,计算机系统结构 第一章 基本概念,16,第1章 基本概念,1.1 计算机系统结构简介1.2 计算机系统的评价标准1.3 计算机系统的设计技术1.4 计算机系统结构的发展1.5 计算机系统的分类,计算机系统结构 第一章 基本概念,17,1.1 计算机系统结构简介,1.1.1 为什么要研究系统结构1.1.2 如何认识计算机系统1.1.3 计算机系统结
6、构的定义1.1.4 计算机组成技术1.1.5 计算机实现技术,计算机系统结构 第一章 基本概念,18,为什么要研究系统结构,1. 提高处理机运算速度:MIPSFz IPC 其中: Fz为处理机的工作主频 IPC(Instruction Per Cycle)为 每个时钟周期平均执行的指令条数提高IPC:依靠先进系统结构 过去,几个或几十个周期完成一条指令 现在,一个周期完成几条指令提高Fz:缩短门电路延迟,依靠技术进步 流水线技术等,依靠先进系统结构 从指令串行执行,到P4的20级流水线,计算机系统结构 第一章 基本概念,19,计算机系统结构 第一章 基本概念,20,2. 计算机性能提高的几个阶
7、段20世纪70年代末之前,大型机和小型机计算机性能每年提高25%30%。20世纪80年代初,出现微处理机,依靠集成电路技术,性能每年提高35%20世纪80年中期,出现RISC技术、高级语言和操作系统等,性能每年提高50%1995年,先进系统结构对微处理器性能的贡献是单纯技术进步的5倍。3. 计算机性能按摩尔定理发展,但摩尔定律正在走向死角。4. 计算机系统的设计者们要不断创新。,计算机系统结构 第一章 基本概念,21,如何认识计算机系统,1. 虚拟计算机定义:从不同角度所看到的计算机系统的属性是不同的。主要观察角度包括: 应用程序员 系统程序员 硬件设计人员对计算机系统的认识通常只需要在某一个
8、层次上,计算机系统结构 第一章 基本概念,22,虚拟计算机系统,计算机系统结构 第一章 基本概念,23,2. 计算机系统的层次结构计算机系统可分为7个层次 第3级至第6级由软件实现,称为虚拟机从学科领域来划分: 第0级和第1级属于计算机组成原理 第2级属于计算机系统结构 第3至第5级属于系统软件 第6级属于应用软件它们之间有交叉 例如:第3级必须依赖第4级和第5级来实现,计算机系统结构 第一章 基本概念,24,计算机系统的层次结构,25,计算机系统结构 第一章 基本概念,26,3. 透明性概念定义:本来存在的事物或属性,从某种角度看似乎不存在例如:CPU类型、型号、主存储器容量等 对应用程序员
9、 透明 对系统程序员、硬件设计人员等 不透明例如:浮点数表示、乘法指令 对高级语言程序员、应用程序员 透明 对汇编语言程序员、机器语言程序员 不透明例如:数据总线宽度、微程序 对汇编语言程序员、机器语言程序员 透明 对硬件设计人员、计算机维修人员 不透明,计算机系统结构 第一章 基本概念,28,计算机系统结构的定义,计算机系统结构定义一 Amdahl于1964年在推出IBM360系列计算机时提出:程序员所看到的计算机系统的属性, 即概念性结构和功能特性程序员:系统程序员(包括:汇编语言、机器语言、编译程序、操作系统)看到的:编写出能在机器上正确运行的程序所必须了解到的,计算机系统结构 第一章
10、基本概念,29,概念性结构 IBM360系列计算机的概念性结构,计算机系统结构 第一章 基本概念,30,数据表示:硬件能够直接认别和处理的数据类型; 寻址技术:编址方式、寻址方式和定位方式等; 寄存器组织:操作数寄存器、变址寄存器、控制寄存 器及专用寄存器的定义、数量和使用规则等; 指令系统:操作类型、格式,指令间的排序控制等; 中断系统:中断类型、中断级别和中断响应方式等; 存储系统:寻址空间、虚拟存储器、Cache存储器等; 处理机工作状态:定义和切换方式,如管态和目态等; 输入输出系统:数据交换方式、交换过程的控制等; 信息保护:信息保护方式和硬件对信息保护的支持等。,功能特性 指令系统
11、及其执行模式,计算机系统结构 第一章 基本概念,31,2. 计算机系统结构定义二 研究软硬件功能分配和对软硬件界面的确定计算机系统由软件、硬件和固件组成,它们在功能上是同等的。同一种功能可以用硬件实现,也可以用软件或固件实现。不同的组成只是性能和价格不同, 他们的系统结构是相同的。系列计算机概念:相同系统结构,不同组成和实现的一系列计算机系统。,计算机系统结构 第一章 基本概念,32,计算机组成技术,1.课程名称 Computer Organization 计算机组成,计算机组织,计算机原理,计算机组成原理2.研究方法 从内部研究计算机系统 计算机组成是指计算机系统结构的逻辑实现。,计算机系统
12、结构 第一章 基本概念,33,3.主要研究内容,确定数据通路的宽度; 确定各种操作对功能部件的共享程度; 确定专用的功能部件; 确定功能部件的并行度; 设计缓冲和排队策略; 设计控制机构; 确定采用何种可靠性技术。,计算机系统结构 第一章 基本概念,34,计算机实现技术,计算机实现是指计算机组成的物理实现主要包括: 处理机、主存储器等部件的物理结构; 器件的集成度和速度; 专用器件的设计; 器件、模块、插件、底版的划分与连接; 信号传输技术; 电源、冷却及装配技术,制造工艺及技术等。随着技术、器件和应用的发展,三者之间的界限越来越模糊。,计算机系统结构 第一章 基本概念,35,运算速度存储器系
13、统其他性能价格标准,计算机系统的评价标准,计算机系统结构 第一章 基本概念,36,运算速度,运算速度是表示处理机性能的主要指标。 有多种表示处理机运算速度的方法。 哪一种表示方法合理?1. 时钟频率(处理机主频) 只能用于同一公司、同一类型、同一配置的处理机 如:Pentium4 2.0G比Pentium4 1.6G快25%? Pentium4 2.4G比Pentium4 1.6G快50%? 只表示CPU的指令处理能力 实际运算速度还与Cache、内存、I/O、被执行程序等均有关。,计算机系统结构 第一章 基本概念,37,2.指令执行速度 一种经典的表示运算速度的方法 MIPS(Million
14、 Instructions Per Second), GIPS, TIPS 其中: Fz为处理机的工作主频 CPI(Cycles Per Instruction)为 每条指令所需的平均时钟周期数 IPC(Instruction Per Cycle)为 每个时钟周期平均执行的指令条数例1:计算 PentiumIV 2GHz 处理机的指令执行速度。,解:由于 PentiumIV 2GHz 处理机的 IPC4(或CPI0.25), Fz2000MHz 因此,MIPSPentiumIV2GFzIPC20004 8000MIPS8GIPS 即每秒钟80亿次(平均每秒钟执行80亿条指令) 主要优点:直观、
15、方便。目前还经常使用 主要缺点: (1) 不同指令的执行速度差别很大 (2) 指令使用频度差别很大 (3) 有相当多的非功能性指令,计算机系统结构 第一章 基本概念,39,3. 等效指令速度: 吉普森(Gibson)法:加减法50,乘法15,除法5,程序控制15,其他15 静态指令使用频度:在程序中直接统计 动态指令使用频度:在程序执行过程中统计,例2:我国早期研制的一种小型计算机DJS-130 定点16位,加法指令每秒50万次,但没有硬件乘除法指令。用软件实现乘除法,速 度低100倍左右。求等效指令速度。解:等效指令速度为:,即每秒2万次, 由于用软件实现乘除法,等效指令速度降低了25倍。,
16、计算机系统结构 第一章 基本概念,41,例3:假设在一般程序中浮点开平方操作FPSQR所占 的比例为2,它的CPI为100;其他浮点操作 FP所占的比例为23,它的CPI4.0;其余 75指令的CPI1.33,计算该处理机的等效 CPI。如果FPSQR操作的CPI也为4.0,重新计算 等效CPI。解:,等效CPI110024231.33753.92等效CPI24251.33752.00,改进了在用户程序中仅占2的开平方操作,整个机器的等效运算速度提高了近一倍。,4. 指令执行速度的 4 种平均方法 算术平均: 调和平均(用速率来度量): 加权平均加权算术平均:加权调和平均:,几何平均: 其中:
17、n 指不同的程序,ETR(execution time ratio) i是第i个程序相对于参考机器正交化后的执行时间 几何平均速度与所参考的机器无关,有如下性质: 几何平均值的比率等于比率的几何平均值,计算机系统结构 第一章 基本概念,44,5. 核心程序法 把应用程序中使用最频繁的那部分程序作为评价计算机性能的标准程序。称为基准测试程序(benchmark) 整数测试程序:Dhrystone 用C语言编写,100条语句。包括:各种赋值语句,数据类型和数据区,控制语句,过程调用和参数传送,整数运算和逻辑操作等。 VAX-11/780的测试结果为每秒1757个Dhrystones,即:1VAX
18、MIPS1757 DhrystonesSecond 浮点测试程序:Linpack 用FORTRAN编写,主要是浮点加法和浮点乘法操作 用 MFLOPS(Million Floating Point Operations Per Second)表示,GFLOPS、TFLOPS,linpack是一个可以分解和解答线性方程和线性最小平方问题的Fortran子程序集.这个包解决的线性系统是:矩阵是普通的,带状的,均衡模糊的,均衡确定的,三角形,tridiagonal square.另外在包计算QR和单值矩形矩阵分解并用它们解决最小平方根问题.linpack于20世纪70年代到80年代初为超级计算机而设
19、计,linpack主要是为替代lapack.它(linpack)被设计高效运行于共享存储器,向量的超级计算机., SPEC基准程序 System Performance Evaluation Cooperative 由30个左右世界知名计算机大厂商所支持的非盈利性国际合作组织,包括:IBM、AT&T、BULL、Compaq、CDC、DG、DEC、Fujitsu、HP、Intel、MIPS、Motolola、SGI、SUN、Unisys等; 1989年10月宣布SPEC1.0,程序量超过15万行,包含4个定点程序和6个浮点程序, 测试结果用SPECint89和SPECfp89表示。 1992年增
20、加到有6个定点程序和14个浮点程序,测试结果用SPECint92和SPECfp92表示。 1995年推出SPECint95和SPECfp95 SPEC2000,12个定点程序、14个浮点程序,计算机系统结构 第一章 基本概念,46, SPEC基准测试程序举例 处理机 SPECint95 SPECfp95 PentiumII 450 18.5 13.3 PentiumIII 450 18.7 13.7 PentiumIII 500 20.6 14.7 PientiumIII 550 22.3 15.6 Celeron 300A 12.0 9.66 Celeron 333 13.1 10.20 C
21、eleron 366 14.1 10.70 Celeron 400 15.1 11.20 Celeron 433 16.1 11.60 Celeron 466 17.0 12.00,计算机系统结构 第一章 基本概念,47,Pentium4性能评测数据(数据全部来源于Intel网站),计算机系统结构 第一章 基本概念,48,计算机系统结构 第一章 基本概念,49,计算机系统结构 第一章 基本概念,50,计算机系统结构 第一章 基本概念,51,计算机系统结构 第一章 基本概念,52,计算机系统结构 第一章 基本概念,53,计算机系统结构 第一章 基本概念,54,计算机系统结构 第一章 基本概念,5
22、5,计算机系统结构 第一章 基本概念,56,计算机系统结构 第一章 基本概念,57,计算机系统结构 第一章 基本概念,58,6. 峰值速度 蜂值指令速度:MIPS、GIPS、TIPS 浮点蜂值速度:MFLOPS、GFLOPS、TFLOPS例5:一个由36台计算机组成的Cluster系统,每 台计算机内部由4个PentiumIII 700,计算这个Cluster系统的指令峰值速度。解:PentiumIII 700MHz,有3条指令流水线, 峰值指令速度为:700 3 2100MIPS Cluster的峰值指令速度700 36 302 400MIPS 即每秒千亿次,计算机系统结构 第一章 基本概念
23、,59,存储系统,1.存储层次 第1层:Register Files(寄存器堆) 第2层:Lookahead(先行缓冲站) 第3层:Cache(高速缓冲存储器) 第4层:Main Memory(主存储器) 第5层:Online Storage(联机存储器) 第6层:Off-line Storage(脱机存储器) 第13层在CPU芯片内部,第4层在主板上,第5层在机箱内(硬盘),第6层依靠手工加载(VCD/DVD/磁带/刻录机等),计算机系统结构 第一章 基本概念,60,计算机系统结构 第一章 基本概念,61,2. 寻址空间 程序员可以使用的存储器容量,即每个程序的大小 通常有216、224、2
24、32、264、 Pentium处理机的寻址空间为4GB 与实际配置的存储器容量无关3. 存储容量 实际物理存储器的大小 通常用KB、MB、GB等表示,计算机系统结构 第一章 基本概念,62,4. 主存储器的种类 SDRAM (Synchronous Dynamic Random Access Memory) RDRAM (RAMBUS DRAM) DDR (Dual Date Rate DRAM)5. 速度 主存度与CPU系统总线速度相匹配 P4系统总线速度400MHz(3200MB/S)或533 DDR: 64bits333MHz/8=2700MB/S RDRAM: 16bits800MHz
25、/82=3200MB/S 6. 存储系统 采用软件和硬件相结合的方法,获得速度高、容量大、价格便宜的存储器,计算机系统结构 第一章 基本概念,63,其他性能,1. 字长 1几百位,16位、32位、64位 由数据字长决定,8的倍数,32位、64位等 可变字长:任意组合2. 数据表示 定点、浮点、逻辑、向量、串、栈、树、 发展方向之一:自定义数据表示4. 指令系统 CISC(Complex Instruction Set Computer)复杂指令集计算机 RISC(Reduced Instruction Set Computer)精简指令集计算机 VLIW(Very Long Instructi
26、on Word) 超长指令字,4. 输入输出系统 输入输出系统的组织方式 中断系统 通道处理机 输入输出处理机5. 保护和诊断能力 程序与数据的保护 诊断能力:检错, 纠错, 冗余, 自诊断能力 可靠性:RAS技术,可靠性R,可用性A,可维护性S,计算机系统结构 第一章 基本概念,65,价格标准,1价格与性能的关系: 摩尔定理:速度每10年左右提高100倍, 但价格基本维持不变 用当前同样的价格,在5年之后能买到性能高出10倍的计算机2硬件与软件的价格比例: 硬件在整个计算机系统价格中所占的比例在下降,软件所占的比例在上升 目前软件价格已经超过硬件价格,计算机系统结构 第一章 基本概念,66,
27、软件所占的成本越来越高,计算机系统结构 第一章 基本概念,67,计算机系统的设计技术,计算机设计者的任务软硬件取舍软件兼容性计算机系统设计方法,计算机系统结构 第一章 基本概念,68,计算机设计者的任务,系统结构设计:包括指令集、存储系统、总线结构、处理器设计等,是软硬件的分界面硬件实现技术:相当重要,不同指令集对系统性能的影响在缩小应用或市场需求性能优化:可靠性、容错性、价格与性能实现的复杂性:硬件实现方案、软件复杂性、投放市场时间性能价格比:必须考虑实现的成本,包括软件成本,计算机系统结构 第一章 基本概念,70,软硬件取舍,1. 软硬件的关系理论上:有两种极端实现方法: 全硬件机器:操作
28、系统、高级语言、应用等 硬件只有1位加法和分支操作,其他都用软件关键问题:性能与价格的关系软件与硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多,计算机系统结构 第一章 基本概念,71,硬件实现的比例越来越高,计算机系统结构 第一章 基本概念,72,2. 从价格因素考虑的软硬件取舍 假设:硬件设计费为Dh、软件设计费为Ds、硬件拷贝费为Ch、软件拷贝费为Cs,R为软件重复出现次数(占用内存、占用介质),当台数为V时,每台的硬件费用和软件费用之比为: 由于:Dh Ds,Ch Cs,当R很大时,经常使用的基本功能适宜用硬件实现 由于
29、:Ds Cs,当V很大时,生产台数很多时适宜用硬件实现,计算机系统结构 第一章 基本概念,73,3. 从改进性能考虑的软硬件取舍基本方法:加快经常性事件的执行速度Amdahl定律:系统中某一部件由于采用更快的执行方式后,整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。 在Amdahl定律中,加速比与两个因素有关:,改进后整个任务的执行时间为: 其中:0为改进前的整个任务的执行时间。 改进后整个系统的加速比达到: 其中:Fe表示可改进部分所占的百分比, (1-Fe)表示不可改进部分所占的百分比, Se表示改进后,可改进部分的加速比。,例5:某部件的处理时间仅为整个运行时间的
30、40%,如果将该部件的处理速度加快到10 倍,则采用加快措施后能使整个系统的 性能提高多少?解:由题意可知:Fe=0.4, Se=10, 根据Amdahl定律,加速比为:,4. 改进性能的主要途径 (1) 面向目标代码改进 方法:用一条指令代替一串指令 根据计算结果改进:例如,增加硬件乘法和硬件除法指令能够,使等效指令速度提高25倍, 据统计数据改进指令功能: 如数据传送指令、快速保存与恢复现场指令等 增加运算型指令的功能:如函数运算指令等,(2) 面向高级语言和编译程序改进: 方法:增强对高级语言和编译程序支持的指令的功能 例如:在do循环中,循环体只 有一二条的占60%左右,增加 循环控制
31、指令。 例如:条件码对高级语言几乎 无用,在并行计算机中已经取 消条件码。,Im2,(3) 面向操作系统改进: 系统结构设计要规整,消除例外情况。 寄存器定义要统一(如 A 寄存器等) 操作要均匀(如 A-B 与 B-A) 所有的存储部件都要对称 进程的管理和切换 存储管理和信息保护 进程的同步与互斥,信号灯管理 处理机工作状态和访问方式的转换 这类指令的使用频度往往很低,但必须设置,软件兼容性设计方法,原因:软件相对于硬件的成本越来越贵, 已积累了大量成熟的系统软件和应用软件。1. 兼容种类 (1)向后兼容:在某一时间生产的机器上运行的目标 软件能够直接运行于更晚生产的机器上。 (2)向前兼
32、容: (3)向上兼容:在低档机器上运行的目标软件能够直 接运行于高档机器上。 (4)向下兼容: 向后兼容必须做到,向上兼容尽量做到 向前兼容和向下兼容,可以不考虑,方法一:系列机方法 系列机定义: 具有相同的系统结构,但组成和实现技术不同的一系列计算机系统 实现方法: 在系统结构基本不变的基础上,根据不同的性能和不同的器件,研制出多种性能和价格不同的计算机系统。 一种系统结构可以有多种组成,一种组成也可以有多种物理实现 如IBM370系列机: 115,125,135,145,158,168等,相同的指令系统,采用顺序执行、重迭、流水和并行处理方式相同的32位字长,数据通路宽度为8位、16位、3
33、2位、64位。如PC系列机有: 不同主频:4.7MHz,500MHz,1GHz,2.4GHz, 3GHz, 不同扩展:Pentium、Pentium Pro、Pentium MMX、Pentium SSE、Pentium SSE2 不同Cache:Pentium、Celeron、Xeon 不同字长:8位、16位、32位、64位,采用系列机方法的主要优点: (1) 系列机之间软件兼容,可移植性好 (2) 插件、接口等相互兼容 (3) 便于实现机间通信 (4) 便于维修、培训 (5) 有利于提高产量、降低成本 采用系列机方法的主要缺点: 限制了计算机系统结构的发展 如PC系列机,其系统结构非常落后
34、,使用也最普及,方法二:模拟与仿真 Simulation Emulation定义:在一台现有的计算机上实现另一台计算机的指令系统。全部用软件实现的叫模拟,用软件、硬件、固件混合实现的叫仿真模拟的实现方法 在A计算机上通过解释或编译实现B计算机的指令系统。A机器称为宿主机,B机器称为虚拟机。仿真的实现方法 直接用A机器的一段微程序解释执行B机器的指令。A机器称为宿主机,B机称为目标机。,计算机系统结构 第一章 基本概念,84,优缺点比较 模拟方法速度低,仿真方法速度高 仿真需要较多的硬件(包括控制存储器) 系统结构差别大的机器难于用仿真方法实现 除了指令系统之外,还有存储系统、I/O系统、中断系
35、统、控制台的操作等模拟方法用于计算机系统的设计过程 在一台已有的机器上用模拟方法实现正在设计中的机器的指令系统等。具体过程如下:设计方案模拟性能评价修改设计投产,计算机系统结构 第一章 基本概念,85,方法三:统一高级语言 实现方法:采用同一种不依赖于任何具体机器的高级语言编写系统软件和应用软件。 困难:至今还没有这样一种高级语言,短期内很难实现。C、Ada、Java、 三种方法比较: 采用统一高级语言最好,是努力的目标 系列机是暂时性方法,也是目前最好的方法 仿真的速度低,芯片设计的负担重,目前用于同一系列机内的兼容,1/101/2的芯片面积用于仿真,方法四:目标代码的并行编译技术 一个新的
36、研究课题 一种机器的目标代码重新编译到另一种机器的并行目标代码 两种方法: (1) 动态代码转换 例1:IBM公司研制 DAISY(Dynamically Architected Instruction Set from Yorktown) 处理机 例2:Transmeta公司研制Crusoe处理机 已经大量应用于笔记本计算机,其功耗很低。 (2) 静态重编译:正在研究过程中,难度很大,动态代码转换技术,采用动态二进制转换技术实现与X86等处理机兼容,把X86等通用处理机的程序直接映射到VLIW处理机中执行。IBM公司推出了开放源代码DAISY,它不仅可以实现IBM的VLIW处理器与X86处理
37、机之间的二进制兼容,还可以实现PowerPC、S/390、IBM的Java虚拟机与VLIW处理器之间的二进制兼容Transmeta公司推出了“Code Morphing Software”,这种软件可以保证Transmeta公司的VLIW处理机Crusoe能够与X86处理机之间实现二进制代码兼容,计算机系统结构 第一章 基本概念,88,计算机系统设计过程,方法1:由上向下(Top-Down)设计过程:由上向下 面向应用的数学模型面向应用的高级语言面向这种应用的操作系统面向操作系统和高级语言的机器语言面向机器语言的微指令系统和硬件实现应用场合:专用计算机的设计特点:对于所面向的应用领域,性能和性
38、能价格比很高。随着通用计算机价格降低,目前已经很少采用,计算机系统结构 第一章 基本概念,89,方法2:由下向上(Bottom-Up)设计过程: 根据当时的器件水平,设计微程序机器级和传统机器级根据不同的应用领域设计多种操作系统、汇编语言、高级语言编译器等最后设计面向应用的用户级应用场合:通用计算机的一种设计方法,在计算机早期设计中(6070年代)广为采用特点:容易使软件和硬件脱节,整个计算机系统的效率降低。,计算机系统结构 第一章 基本概念,90,方法3:中间开始(Middle-Out) 用于系列计算机的设计过程中,计算机系统结构 第一章 基本概念,91,方法3:中间开始(Middle-Ou
39、t)设计过程: 首先定义软硬件的分界面(指令系统、存储系统、输入输出系统、中断系统、硬件对操作系统和编译系统的支持等) 然后各个层次分别进行设计(软件设计人员设计操作系统、高级语言、汇编语言、应用程序等,硬件设计人员设计传统机器、微程序、硬联逻辑等) 应用场合:用于系列机的设计 特点:软硬件人员结合、同时设计,软硬件功能分配合理。,计算机系统结构 第一章 基本概念,92,计算机系统的发展,冯诺依曼结构器件发展的影响应用发展的影响改进算法的影响,计算机系统结构 第一章 基本概念,93,冯诺依曼结构,Van Nenmann基本思想于1936年1946年期 间形成,由冯诺依曼等人于1946年提出,1
40、. 特点: 存储程序、运算器为中心、集中控制存储器是字长固定的、顺序线性编址的一维结构,每个地址是唯一定义的。 4096个字、40位。由指令形式的低级机器语言驱动。指令顺序执行,即一般按照指令在存储器中存放的顺序执行,程序分支由转移指令实现。运算器为中心,输入输出设备与存储器之间的数据传送都途经运算器。运算器、存储器、输入输出设备的操作以及它们之间的联系都由控制器集中控制。,计算机系统结构 第一章 基本概念,95,2. 现代处理机对冯诺依曼结构的改进 不变的:存储程序 改变的:存储器为中心, 总线结构, 分散控制从基于串行算法变为适应并行算法,出现了向量计算机,并行计算机、多处理机等流水线处理
41、机,超标量处理机,超流水线处理机,超标量超流水线处理机数据库计算机和知识库计算机专用计算机,如过程控制计算机为获得高可靠性而研制容错计算机 功能分散化、专业化,出现了各种分布计算机、外围处理机、通信处理机等,计算机系统结构 第一章 基本概念,96,存储器为中心、分散控制,计算机系统结构 第一章 基本概念,97,总线结构,分散控制总线: 连接计算机各功能部件的连线和管理信息传输规则的逻辑电路称为总线。特点:在任何时刻,只能有一个部件向总线上发送信息,可以有多个部件同时接收信息。组成: 数据总线、地址总线、控制总线。 单总线结构,计算机系统结构 第一章 基本概念,98,双总线结构,计算机系统结构
42、第一章 基本概念,99,三总线结构,计算机系统结构 第一章 基本概念,100,3. 非冯计算机的发展什么是非冯计算机?非指令驱动,从传统的指令驱动型改变为数据驱动型,出现了数据流机计算机。从传统的指令驱动型改变为需求驱动型,出现各种图归约计算机。处理非数值化信息的智能计算机,自然语言、声音、图形和图象处理,虚拟现实处理等第五代计算机,由推理机和知识库机等组成。历经10年,召开过多次专题国际会议。神经网络计算机,仿生计算机,,计算机系统结构 第一章 基本概念,101,器件发展的影响,1. 第1代至第4代计算机以器件来划分 第一代:电子管(Valve) 第二代:晶体管(Transistor) 第三代:集成电路(LSI) 第四代:大规模集成电路(VLSI) 第五代:智能计算机?第五代计算机以什么作为标志来划分?第五代计算机什么时候诞生?,计算机系统结构 第一章 基本概念,102,2. 器件发展的特点(1) 集成度迅速提高 目前水平:每个芯片有1010个晶体管 单芯片内可以做大于1Gb存储器, 单芯片内可以集成2个CPU全部Cache 每45年提高一个数量级 还远没有达到集成度的极限 问题? 如何利用器件集成度的提高,不断改进计算机系统的性能:例如,有更多指令并行执行,采用更深的流水线,集成更多的Cache等,