1、第二章第二章 习题习题作业:作业:2626、1414、1515思考:思考:1 1、7137132024/3/29 2024/3/29 周五周五1/322024/3/29 周五周五1/50早期三层模型早期三层模型2/322024/3/29 2024/3/29 周五周五2024/3/29 周五周五2/501951年年剑桥大学提出剑桥大学提出(a)软硬件层次)软硬件层次 (b)语言层次)语言层次计算机系统的层次结构计算机系统的层次结构1.(a)图自下而上反映了系统逐级)图自下而上反映了系统逐级生成生成的过程,自上而下反映了系统的过程,自上而下反映了系统求求解解问题的过程;问题的过程;2.软硬件的逻辑
2、等价性软硬件的逻辑等价性可以表现为:硬件软化(如可以表现为:硬件软化(如RISC思想)、软件硬思想)、软件硬化(如化(如CISC思想)、固件化(如微程序)思想)、固件化(如微程序);3.(b)图中的)图中的虚拟机虚拟机:与某种特殊编程语言对应的假想硬件机器:与某种特殊编程语言对应的假想硬件机器微体系结构层微体系结构层(微程序或硬连逻辑)(微程序或硬连逻辑)操作系统层操作系统层语言处理层(解释、编译)语言处理层(解释、编译)用户程序层(语言编程)用户程序层(语言编程)系统分析层(数学模型、算法)系统分析层(数学模型、算法)硬核硬核级级数字逻辑层(硬件)数字逻辑层(硬件)指令系统层(机器语言指令)
3、指令系统层(机器语言指令)应用语言虚拟机应用语言虚拟机高级语言虚拟机高级语言虚拟机汇编语言虚拟机汇编语言虚拟机操作系统虚拟机操作系统虚拟机机器语言级机器语言级微程序级微程序级寄存器级(硬件)寄存器级(硬件)硬件系统:异常处理机构、指令系统、硬件系统:异常处理机构、指令系统、CPU、存储器、存储器、I/O及通信子系统及通信子系统系统软件:操作系统、编译器、数据库管理系系统软件:操作系统、编译器、数据库管理系统、统、Web浏览器、设备驱动、中断服务程序浏览器、设备驱动、中断服务程序应用软件应用软件应用开发角度的多层结构应用开发角度的多层结构硬件向上提供的接口:硬件向上提供的接口:指令系统指令系统异
4、常事件异常事件端口定义端口定义2024/3/29 周五周五4/50体系结构、组成与实现体系结构、组成与实现n体系结构体系结构Architecture 程序员关心的计算机概念结构与功能特性程序员关心的计算机概念结构与功能特性如:确定指令集中是否有乘法指令;如:确定指令集中是否有乘法指令;n计算机组成计算机组成Organization从硬件角度关注物理机器的组织从硬件角度关注物理机器的组织 如:乘法指令由专用乘法器还是用加法器实现如:乘法指令由专用乘法器还是用加法器实现n计算机实现计算机实现Realization底层的器件技术、微组装技术、冷却技术等底层的器件技术、微组装技术、冷却技术等如:加法器
5、底层的物理器件类型及微组装技术如:加法器底层的物理器件类型及微组装技术系列机系列机2024/3/29 周五周五5/50计算机的体系结构计算机的体系结构 1946年年,美国宾夕法尼亚大学莫尔学院的物理学博士,美国宾夕法尼亚大学莫尔学院的物理学博士Mauchley和电气工程师和电气工程师Eckert领导的小组研制成功世界上第一领导的小组研制成功世界上第一台数字式电子计算机台数字式电子计算机ENIAC。著名的美籍匈牙利数学家著名的美籍匈牙利数学家Von Neumann参加了为改进参加了为改进ENIAC而举行的一系列专家会议,研究了新型计算机的体系结构。而举行的一系列专家会议,研究了新型计算机的体系结
6、构。1949年年,英国剑桥大学的威尔克斯等人在,英国剑桥大学的威尔克斯等人在EDSAC 机上实现机上实现了冯了冯诺依曼模式。诺依曼模式。直至今天冯直至今天冯诺依曼体系结构依然是绝大诺依曼体系结构依然是绝大多数数字计算机的基础。多数数字计算机的基础。2024/3/29 周五周五6/50计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)G.Skill DDR3 1600,4GB*4Core I7-3960X 6核核12线程线程计算机的组成(计算机的组成(1)猫头鹰猫头鹰Noctua 14cm散热风扇散热风扇计算机的组成(
7、计算机的组成(1)Enzotech CPU水冷头水冷头计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)NVIDIA Quadro FX5800计算机的组成(计算机的组成(1)AMD FireGL,V8750计算机的组成(计算机的组成(1)Razer曼巴眼镜蛇曼巴眼镜蛇Cherry机械茶轴机械茶轴计算机的组成(计算机的组成(1)专业领域专业领域 EIZO 24.1Dell Ultrasharp 24计算机的组成(计算机的组成(1)酷冷至尊酷冷至尊 COSMOS计算机的组成(计算机的组成(1)安耐美冰核安耐美冰核 1250W计算机的组成(计算机的组成
8、(1)计算机的组成(计算机的组成(1)计算机的组成(计算机的组成(1)计算机的实现计算机的实现 半导体技术半导体技术 制造技术制造技术 封装技术封装技术 装配技术装配技术 电源技术电源技术 冷却技术冷却技术 2024/3/29 周五周五24/50冯冯诺依曼体系结构诺依曼体系结构1硬件组成硬件组成n五大部分五大部分运算器、存储器、控制器、输入设备、输出设备运算器、存储器、控制器、输入设备、输出设备n以以存储器存储器为中心为中心2信息表示:二进制信息表示:二进制 计算机内部的控制信息和数据信息均采用计算机内部的控制信息和数据信息均采用二进制二进制表示,并存放在同表示,并存放在同一个存储器一个存储器
9、中。中。3工作原理:存储程序工作原理:存储程序/指令指令(控制控制)驱动驱动 编制好的程序编制好的程序(包括指令和数据包括指令和数据)预先经由输入设备输入并预先经由输入设备输入并保存在保存在存储器存储器中;中;计算机开始工作后,在不需要人工干预的情况下由控制器计算机开始工作后,在不需要人工干预的情况下由控制器自动自动、高速地依次从存储器中取出指令并加以执行。、高速地依次从存储器中取出指令并加以执行。模型机体系结构模型机体系结构基于基于总线总线的的冯冯诺依曼架构诺依曼架构模型机模型机n总线子系统总线子系统:作为公共通道连接各子部件,用于实现各作为公共通道连接各子部件,用于实现各部件之间的数据、信
10、息等的传输和交换部件之间的数据、信息等的传输和交换n存储器子系统存储器子系统:用来存放当前的运行程序和数据用来存放当前的运行程序和数据n输入输出子系统:输入输出子系统:用于完成计算机与外部的信息交换用于完成计算机与外部的信息交换nCPU子系统子系统:集成了运算器、控制器和寄存器的超大规集成了运算器、控制器和寄存器的超大规模集成电路芯片模集成电路芯片(VLSI)2024/3/29 周五周五26/50模型机总线结构模型机总线结构按传输信息的不同,可将总线分为数据总线按传输信息的不同,可将总线分为数据总线DB、地址、地址总线总线AB和控制总线和控制总线CB三类:三类:地址总线通常是地址总线通常是单向
11、单向的,由的,由主设备主设备(如如CPU)发出,用于选择发出,用于选择读写对象读写对象(如某个特定的存储单元或外部设备如某个特定的存储单元或外部设备);数据总线用于数据交换,通常是数据总线用于数据交换,通常是双向双向的;的;控制总线包括真正的控制总线包括真正的控制控制信号线信号线(如读如读/写信号写信号)和一些和一些状态状态信信号线号线(如是否已将数据送上总线如是否已将数据送上总线),用于实现对设备的监视和,用于实现对设备的监视和控制。控制。MPURAMROMI/O接口接口外设外设ABDBCB2024/3/29 周五周五27/50模型机内存储器模型机内存储器存储器组织由许多存储器组织由许多字节
12、单元字节单元组成,每个单元都有一个唯一的编组成,每个单元都有一个唯一的编号(存储单元号(存储单元地址地址),保存的信息称为存储单元),保存的信息称为存储单元内容内容。访问访问(读或写读或写)存储单元存储单元:存储单元地址经地址译码后产生相:存储单元地址经地址译码后产生相应的选通信号,同时在控制信号的作用下读出存储单元内容到应的选通信号,同时在控制信号的作用下读出存储单元内容到数据缓冲器,或将数据缓冲器中的内容写入选定的单元。数据缓冲器,或将数据缓冲器中的内容写入选定的单元。算术逻辑单元算术逻辑单元ALU累加器累加器ACC累加锁存器累加锁存器暂存暂存器器标志寄存器标志寄存器FR通用寄存器组通用寄
13、存器组堆栈指针堆栈指针SP程序计数器程序计数器PC微微 操操 作作 控控 制制 电电 路路指令译码器指令译码器ID指令寄存器指令寄存器IR 操作码操作码,地址码地址码脉冲分配器脉冲分配器时钟脉冲源时钟脉冲源控制总线控制总线CB地址总线地址总线AB数据总线数据总线DB内部总线内部总线地址缓冲器地址缓冲器数据缓冲器数据缓冲器运算器运算器寄存器组寄存器组控制器控制器模型机模型机CPU子系统子系统2024/3/29 周五周五29/50模型机指令系统模型机指令系统指令是发送到指令是发送到CPU的命令,指示的命令,指示CPU执行一个特定的处理,如执行一个特定的处理,如从存储器取数据、对数据进行逻辑运算等。
14、从存储器取数据、对数据进行逻辑运算等。CPU可以处理可以处理的全部指令集合称为的全部指令集合称为指令集指令集(Instruction Set)。指令集结。指令集结构构(ISA,Instruction Set Architecture)是体系结构的是体系结构的主要内容之一,对主要内容之一,对CPU的基本组织会产生非常大的影响。的基本组织会产生非常大的影响。ISA功能设计实际就是功能设计实际就是确定软硬件的功能分配确定软硬件的功能分配。指令通常包含指令通常包含操作码和操作数操作码和操作数两部分。操作码指明要完成操作两部分。操作码指明要完成操作的性质,如加、减、乘、除、数据传送、移位等;操作数的性质
15、,如加、减、乘、除、数据传送、移位等;操作数指明参加上述规定操作的数据或数据所存放的地址。指明参加上述规定操作的数据或数据所存放的地址。汇编语言源程序汇编语言源程序机器语言程序机器语言程序(目标代码)(目标代码)汇编(汇编程序)汇编(汇编程序)高级语言源程序高级语言源程序编译或解释(编译程序)编译或解释(编译程序)模型机常用汇编指令模型机常用汇编指令指指 令令 类类 型型操作码示例操作码示例操作数示例操作数示例说说 明明算算术类加法加法ADDRs1,Rs2,RdRs,Imm,Rd(Rs1)+(Rs2)Rd(Rs)+ImmRd运算运算类指令只能指令只能对寄存器中寄存器中的数据或立即数的数据或立即
16、数进行直接操行直接操作作减法减法SUBRs1,Rs2,RdRs,Imm,Rd(Rs1)-(Rs2)Rd(Rs)-ImmRd逻辑类位与位与ANDRs1,Rs2,RdRs,Imm,Rd(Rs1)(Rs2)Rd(Rs)ImmRd位或位或ORRs1,Rs2,RdRs,Imm,Rd(Rs1)(Rs2)Rd(Rs)ImmRd位非位非NOTRs,Rd!(Rs)Rd传送送类存存储器或器或I/O读LDRMEM,RdMEM(Rd)将指定地址的存将指定地址的存储单元或元或I/O端口的端口的值读入寄存器入寄存器Rd存存储器或器或I/O写写STRRs,MEM(Rs)MEM将寄存器将寄存器Rs的的值写入指定地址写入指定地
17、址的存的存储单元或元或I/O端口端口寄存器寄存器访问MOVRs,RdImm,Rd(Rs)(Rd)跳跳转类无条件跳无条件跳转JMPLableLable(PC)条件跳条件跳转JX/JNXLableIf X为真真/假,假,则Lable(PC)过程程调用用CALLSub-LableSub-Lable(PC)调用子程序用子程序过程返回程返回RET-返回主程序返回主程序其他其他停机停机HLT-模型机工作原理模型机工作原理计算机的工作本质上就是计算机的工作本质上就是执行程序执行程序的过程。的过程。1顺序执行顺序执行指令执行的基本过程可以分为指令执行的基本过程可以分为取指令取指令(fetch)、分析指令、分析
18、指令(decode)和执行指令和执行指令(execute)三个阶段。三个阶段。2非顺序执行非顺序执行1.转移(转移(jump):执行条件):执行条件/无条件转移指令,不返回无条件转移指令,不返回2.过程(过程(procedure)调用:主程序调用子程序后返回断点)调用:主程序调用子程序后返回断点3.中断(中断(interrupt):外界突发事件处理完后返回断点):外界突发事件处理完后返回断点4.异常(异常(exception):):程序本身产生的某些例外处理完后重新执行程序本身产生的某些例外处理完后重新执行5.陷阱陷阱(trap):程序本身产生某些例外条件处理完后返回断点程序本身产生某些例外条
19、件处理完后返回断点2024/3/29 周五周五32/812024/3/29 周五周五32/50程序的执行过程程序的执行过程取指令、分析指令、执行指令取指令、分析指令、执行指令ABDBALU累加器累加器ACC暂存器暂存器标志寄存器标志寄存器FR寄存器组寄存器组 操作控制器操作控制器OC指令译码器指令译码器ID指令寄存器指令寄存器IR 操作码操作码,地址码地址码内部总线内部总线地址缓冲器地址缓冲器数据缓冲器数据缓冲器程序计数程序计数器器PC地地址址译译码码读控制读控制B0H5CH04H2EH地址地址1001H1002H1003H内容内容1000H内存储器内存储器MOV 5CH,R1ADD R1,2
20、EH,R21CPU外外CPU内内2024/3/29 周五周五33/50对冯对冯诺依曼体系结构的改进诺依曼体系结构的改进1改进改进1.CPU指令集指令集 2.存储器子系统存储器子系统 3.输入输入/输出子系统输出子系统 2改变改变1.改变串行执行模式,发展改变串行执行模式,发展并行技术并行技术;2.改变控制方式,发展数据、需求、模式等其它驱动方式;改变控制方式,发展数据、需求、模式等其它驱动方式;3-6章重点章重点指令功能、指令格式、寻址方式指令功能、指令格式、寻址方式 分层结构分层结构高速总线高速总线+多种接口方式多种接口方式 冯冯诺依曼型计算机的诺依曼型计算机的本质特点也造成了其瓶颈:本质特
21、点也造成了其瓶颈:指令执行的指令执行的串行性串行性 存储器读取的存储器读取的串行性串行性不同的指令集设计策略:不同的指令集设计策略:CISC与与RISCCISC(Complex Instruction Set Computer,复杂指令集计算机),复杂指令集计算机)不断增强指令的功能以及设置更复杂的新指令取代不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。原先由程序段完成的功能,从而实现软件功能的硬化。RISC(Reduced Instruction Set Computer,精简指令集计算机),精简指令集计算机)通过减少指令种类和简化指令功能来降低
22、硬件设计通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。复杂度,从而提高指令的执行速度。*35/86现代计算机:现代计算机:RISC+CISC2024/3/29 周五周五35/502024/3/29 周五周五36/50CISC的特点及设计思想的特点及设计思想美国加州大学美国加州大学Berkeley分校的研究结果表明:分校的研究结果表明:许多复杂指令很少被使用,许多复杂指令很少被使用,“2-8原则原则”控制器硬件复杂(指令多,控制器硬件复杂(指令多,且具有不定长格式和复杂的且具有不定长格式和复杂的数据类型),占用了大量芯数据类型),占用了大量芯片面积,且容易出错;片面
23、积,且容易出错;指令操作繁杂,速度慢;指令操作繁杂,速度慢;指令规整性不好,不利用指令规整性不好,不利用采用流水线技术提高性能。采用流水线技术提高性能。*36/682024/3/29 周五周五37/50RISC的特点及设计思想的特点及设计思想 RISC机的设计遵循以下五个原则:机的设计遵循以下五个原则:指令条数少,格式简单,易于译码;指令条数少,格式简单,易于译码;提供足够的寄存器,只允许提供足够的寄存器,只允许load 和和store指令访问内存;指令访问内存;指令由硬件直接执行,指令由硬件直接执行,在单个周期内完成;在单个周期内完成;充分利用流水线;充分利用流水线;依赖优化编译器的作用;依
24、赖优化编译器的作用;*37/68CISC与与RISC的数据流的数据流IRIDREGALUMEM开始退出IRIDALUMEMREG微操作通道开始退出单通数据通道RISC:Load/Store结构结构CISC:寻址方式复杂:寻址方式复杂*38/862024/3/29 周五周五38/50分层的存储子系统分层的存储子系统如何以合理的价格搭建出容量和速度都满足要求的存储系统,如何以合理的价格搭建出容量和速度都满足要求的存储系统,始终是计算机体系结构设计中的关键问题之一。始终是计算机体系结构设计中的关键问题之一。现代计算机系统通常把不同的存储设备按一定的体系结构组织现代计算机系统通常把不同的存储设备按一定
25、的体系结构组织起来,以解决起来,以解决存储容量、存取速度和价格存储容量、存取速度和价格之间的矛盾。之间的矛盾。设计目标:设计目标:整个存储系统速度整个存储系统速度接近接近M1而价格和容量接近而价格和容量接近Mn2024/3/29 周五周五39/50其他改善存储器带宽的方法其他改善存储器带宽的方法并行存储器并行存储器双端口存储器双端口存储器哈佛体系结构哈佛体系结构DSP程序程序数据数据I/O接口接口外设外设程序地址程序地址数据读地址数据读地址数据写地址数据写地址程序读总线程序读总线数据读总线数据读总线程序程序/数据写数据写数据数据程序程序2024/3/29 周五周五40/502024/3/29
26、周五周五41/50现代高速总线现代高速总线高速并行总线高速并行总线高速总线串行化高速总线串行化多级总线结构多级总线结构北桥北桥 North BridgeNorth Bridge南桥南桥South BridgeSouth Bridge前端总线前端总线Front Side Bus输入输出管理方式输入输出管理方式2024/3/29 周五周五43/50计算机体系结构的演进:并行处理技术计算机体系结构的演进:并行处理技术指令级并行技术指令级并行技术ILP流水线流水线、超标量超标量、超长指令字超长指令字系统级并行技术系统级并行技术SLP多处理器(多处理器(多机多机/多核多核)、多磁盘)、多磁盘线程级并行技
27、术线程级并行技术TLPThread-Level Parallelism 同时同时多线程多线程SMT(Simultaneous multithreading)电路级并行技术电路级并行技术CLP组相联组相联cache、先行进位加法器、先行进位加法器 并行处理技术实现多个处理器或处理器模块的并并行处理技术实现多个处理器或处理器模块的并行性,其基本思想包括行性,其基本思想包括时间重叠时间重叠(time interleaving)、资源重复资源重复(resource replicaiton)和资源共享和资源共享(resource sharing)。流水线技术流水线技术 可通过分可通过分割逻辑,割逻辑,插
28、入缓冲插入缓冲寄存器寄存器(流水线(流水线Reg)来)来构建构建2024/3/29 周五周五45/50指令时空图指令时空图顺序顺序执行执行4级流级流水线水线执行执行流水线满载流水线满载2024/3/29 周五周五46/50更细的流水线更细的流水线取指(取指(FI)指令译码(指令译码(DI)计算操作数地址(计算操作数地址(CO)取操作数(取操作数(FO)执行指令(执行指令(EI)写操作数(写操作数(WO)47/862024/3/29 周五周五47/50流水线流水线CPU的特点的特点优点:优点:通过指令级并行来提高性能。通过指令级并行来提高性能。缺点:缺点:1.增加了硬件成本。增加了硬件成本。2.
29、流水寄存器会引入延迟和时钟偏移,这些额外流水寄存器会引入延迟和时钟偏移,这些额外开销会使每条指令的执行时间有所增加,同时开销会使每条指令的执行时间有所增加,同时限制了流水线的深度。限制了流水线的深度。3.流水线中各段的操作存在关联流水线中各段的操作存在关联(dependence)时可能会引起流水线中断,)时可能会引起流水线中断,从而影响流水线的性能和效率。从而影响流水线的性能和效率。*48/862024/3/29 周五周五48/50流水线冲突流水线冲突理想流水线的性能:每个时钟周期完成一条指令理想流水线的性能:每个时钟周期完成一条指令实际流水机器中可能存在实际流水机器中可能存在冒险冒险(haz
30、ard)导致停顿:导致停顿:数据冲突(数据冲突(如后面的计算要用到前面的结果)如后面的计算要用到前面的结果)定向技术可将结果数据从其产生的地方直接传送到所有定向技术可将结果数据从其产生的地方直接传送到所有需要它的功能部件需要它的功能部件编译器可利用流水线调度(编译器可利用流水线调度(scheduling)技术来重新组)技术来重新组织指令顺序织指令顺序结构冲突(结构冲突(硬件资源不够)硬件资源不够)增加额外的同类型资源增加额外的同类型资源改变资源的设计使其能被同时使用改变资源的设计使其能被同时使用控制冲突(控制冲突(分支等跳转指令引起分支等跳转指令引起)可采用分支预测及预测执行技术最大限度地使处
31、理器各可采用分支预测及预测执行技术最大限度地使处理器各部分保持运行状态。部分保持运行状态。多端口的寄存器堆哈佛结构存储器、超标量*49/862024/3/29 周五周五49/50流水线数据冲突及乱序执行流水线数据冲突及乱序执行2024/3/29 周五周五50/50流水线结构冲突及超标量流水线流水线结构冲突及超标量流水线?有有5个执行单元的超标量流水线个执行单元的超标量流水线有有2套硬件的套硬件的超标量流水超标量流水线线CPU 共用一个取指单元的共用一个取指单元的5段双流水线段双流水线*2024/3/29 周五周五51/50超标量超标量CPU的体系结构的体系结构超标量技术:超标量技术:可在一个时
32、钟周期内对多条指令进行并可在一个时钟周期内对多条指令进行并行处理,使行处理,使CPI小于小于1;特点:特点:处理器中有两个或两个以上的相同的功能部件;处理器中有两个或两个以上的相同的功能部件;要求操作数之间必须没有相关性;要求操作数之间必须没有相关性;整数指令整数指令浮点指令浮点指令*2024/3/29 周五周五52/50超标量处理机一超标量处理机一般概念性结构般概念性结构instruction fetching多个流水线读取及转移预测逻辑多个流水线读取及转移预测逻辑instruction decoding并行译码器,预译码技术并行译码器,预译码技术instruction dispatchin
33、g动态规划动态规划instruction execution多个流水线功能单元多个流水线功能单元instruction completion暂存结果数据暂存结果数据instruction retiring真正更新真正更新Reg和和Mem中的结果数据中的结果数据*超标量结构机器的例子超标量结构机器的例子 两条输入流水线三条执行流水线每个时钟周期可每个时钟周期可从存储器中获取从存储器中获取两条指令两条指令用于执行不需要访用于执行不需要访问存储器的指令问存储器的指令可处理所有需要或不需可处理所有需要或不需要访问存储器的指令要访问存储器的指令可用于进行乘、除类可用于进行乘、除类较复杂的算术运算较复杂的
34、算术运算决定应使用哪一决定应使用哪一条执行流水线条执行流水线2024/3/29 周五周五54/502024/3/29 周五周五55/50 和超标量处理机不同,超长指令字和超标量处理机不同,超长指令字VLIW(Very Long Instruction Word)依靠编译器依靠编译器在编译时找出指令之间潜在的在编译时找出指令之间潜在的并行性,并通过指令调度把可能出现的数据冲突减少到最小,并行性,并通过指令调度把可能出现的数据冲突减少到最小,最后把能并行执行的多条指令组装成一条很长的指令,然后由最后把能并行执行的多条指令组装成一条很长的指令,然后由处理机中多个处理机中多个相互独立的执行部件相互独立
35、的执行部件分别执行长指令中的一个操分别执行长指令中的一个操作,即相当于同时执行多条指令。作,即相当于同时执行多条指令。VLIW处理机能否成功,很大程度上取决于代码压缩的效率,处理机能否成功,很大程度上取决于代码压缩的效率,其其编译程序和体系结构编译程序和体系结构的的关系非常密切,缺乏对传关系非常密切,缺乏对传统软件和硬件的兼容,因统软件和硬件的兼容,因而不大适用一般应用领域。而不大适用一般应用领域。VLIW处理机处理机*2024/3/29 周五周五56/50多机并行系统多机并行系统大规模并行处理机(大规模并行处理机(MPP)是是一种价格昂贵的超级计算机,它由许一种价格昂贵的超级计算机,它由许多
36、多CPU通过高速专用互联网络连接。通过高速专用互联网络连接。机群(机群(cluster)由多台同构或异构的独立计算机通过高性能网络或局由多台同构或异构的独立计算机通过高性能网络或局域网连在一起协同完成特定的并行计算任务。域网连在一起协同完成特定的并行计算任务。刀片(刀片(blade)通常指包含一个或多个通常指包含一个或多个CPU、内存以及网络接口的服务、内存以及网络接口的服务器主板。通常一个刀片柜共享其它外部器主板。通常一个刀片柜共享其它外部I/O和电源,而辅助存储器则有距离刀和电源,而辅助存储器则有距离刀片柜较近的存储服务器提供。片柜较近的存储服务器提供。网格(网格(Network)是一组由
37、高速网络连接的不同的计算机系统,可以是一组由高速网络连接的不同的计算机系统,可以相互合作也可独立工作。网格计算机将接受中央服务器分配的任务,然后在相互合作也可独立工作。网格计算机将接受中央服务器分配的任务,然后在不忙的时候(如晚上或周末)执行这些任务。不忙的时候(如晚上或周末)执行这些任务。2024/3/29 周五周五57/50多核处理器多核处理器多线程技术多线程技术单片多处理器单片多处理器(Chip MulitProcessor,CMP)问题:晶体管数量、芯片面积及芯片发热量问题:晶体管数量、芯片面积及芯片发热量多线程处理器多线程处理器(Multithreaded Processor)细粒度
38、多线程细粒度多线程(Fine-Grail Multithreading)在每个指令在每个指令中切换线程,处理器必须能在每个时钟周期切换线中切换线程,处理器必须能在每个时钟周期切换线程。其优点是可以隐藏停顿引起的吞吐量损失;缺程。其优点是可以隐藏停顿引起的吞吐量损失;缺点是单个线程处理速度变慢了。点是单个线程处理速度变慢了。粗粒度多线程粗粒度多线程(Coarse-Grail Multithreading)仅当遇仅当遇到开销大的阻塞时才切换线程其缺陷在于流水线启到开销大的阻塞时才切换线程其缺陷在于流水线启动开销引起吞吐量损失,特别是对于短的阻塞动开销引起吞吐量损失,特别是对于短的阻塞2024/3/
39、29 周五周五58/50计算机体系结构的分类计算机体系结构的分类 Flynn分类:根据分类:根据指令流和数据流指令流和数据流的多少进行分类的多少进行分类单指令单数据单指令单数据SISD单指令多数据单指令多数据SIMD多指令单数据多指令单数据MISD多指令多数据多指令多数据MIMDCU控制部件控制部件PU处理部件处理部件MM存储单元存储单元CS为控制流为控制流DS为数据流为数据流IS为指令流为指令流传统的顺序处理机、传统的顺序处理机、标量流水线处理机、标量流水线处理机、超标量流水线处理机超标量流水线处理机阵列处理机、阵列处理机、向量处理机向量处理机无实际机型对应无实际机型对应多处理机系统多处理机
40、系统计算机系统的性能指标计算机系统的性能指标60/322024/3/29 2024/3/29 周五周五字长字长 字长是计算机内部字长是计算机内部一次可以处理一次可以处理 的二进制数码的的二进制数码的位位数数。微机的字长取决于它的。微机的字长取决于它的通用通用寄存器、加法器寄存器、加法器 的位数的位数及及数据总线数据总线 的宽度。字长越长,计算的精度就越高;在的宽度。字长越长,计算的精度就越高;在完成同样精度的运算时数据处理的速度越快。完成同样精度的运算时数据处理的速度越快。注意几个基本概念:注意几个基本概念:BitBit,ByteByte,WordWord主存容量主存容量 存储器容量是衡量计算
41、机存储二进制信息量大小的一存储器容量是衡量计算机存储二进制信息量大小的一个重要指标,一般以个重要指标,一般以字节字节 为单位。计算机主存容量越大,为单位。计算机主存容量越大,处理问题的能力就越强。处理问题的能力就越强。KBKB、MBMB、GBGB、TBTB、PBPB、EBEB、ZBZB、YB.500*2T=1p avantarYB.500*2T=1p avantar计算机系统的性能指标计算机系统的性能指标61/322024/3/29 2024/3/29 周五周五运算速度运算速度 计算机的运算速度可以有不同的衡量方法,如指令的计算机的运算速度可以有不同的衡量方法,如指令的平均运行速度、最短指令的
42、运行速度或计算机的主频在一平均运行速度、最短指令的运行速度或计算机的主频在一定程度上都可以作为衡量标准。定程度上都可以作为衡量标准。显示器显示器 尺寸;分辨率尺寸;分辨率软件配置软件配置 操作系统;工具软件;应用软件。操作系统;工具软件;应用软件。计算机系统的性能指标计算机系统的性能指标62/322024/3/29 2024/3/29 周五周五注:注:对一个复杂的计算机系统来说,以上各项指标并不全对一个复杂的计算机系统来说,以上各项指标并不全面。这是因为计算机系统中包括大量的外部设备和丰富的面。这是因为计算机系统中包括大量的外部设备和丰富的软件资源,这些外部设备及软件资源的性能将对整个系统软件
43、资源,这些外部设备及软件资源的性能将对整个系统性能造成很大影响。为了对一个计算机系统的性能进行比性能造成很大影响。为了对一个计算机系统的性能进行比较客观的评价,通常采用不同层次的较客观的评价,通常采用不同层次的基准测试程序基准测试程序(benchmarkbenchmark)。计算机系统的性能测定计算机系统的性能测定计算机系统的性能由硬件性能和程序特性决定,计算机系统的性能由硬件性能和程序特性决定,通常可利用通常可利用标准测试程序标准测试程序来测定性能。来测定性能。用用MIPS(Million Instructions Per Second,每秒百万条指令每秒百万条指令)或或MFLOPS(每秒百
44、万次浮点操作每秒百万次浮点操作)的数值来衡量计算机系统的的数值来衡量计算机系统的硬件速度。硬件速度。用用 CPU执行时间执行时间T来量化硬软件结合系统的有效速度来量化硬软件结合系统的有效速度。MIPS=f(MHz)/CPI T(s)=(IC CPI)/f(Hz)f(时钟频率):(时钟频率):CPU的基本工作频率的基本工作频率 IC(指令数目):运行程序的指令总数(指令数目):运行程序的指令总数 CPI(Cycles Per Instruction):指令执行的平均周期数,可):指令执行的平均周期数,可从运行大量测试程序或实际程序产生的统计数据中计算出来从运行大量测试程序或实际程序产生的统计数据中计算出来 CPI数越小数越小CPU速度越快速度越快计算机系统性能量度值计算计算机系统性能量度值计算 假设一台计算机的假设一台计算机的时钟频率时钟频率是是100 MHz(每秒百万周期每秒百万周期),具有,具有4种种类型的指令,它们的类型的指令,它们的使用率和使用率和CPI分别如下表所示。求该计算分别如下表所示。求该计算机的机的MIPS值以及运行一个具有值以及运行一个具有107条指令的程序所需的条指令的程序所需的CPU时间。时间。2024/3/29 周五周五64/50