还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机组成原理复习欢迎参加计算机组成原理复习课程本课程将系统地回顾计算机系统的基本组成、工作原理及关键技术,帮助同学们深化对计算机硬件系统的理解我们将从计算机系统概论开始,依次探讨运算方法、存储系统、指令系统、、总线系统、输入输出系统等核心内容,最后展望计算机技术的未来发展CPU方向通过本次复习,希望同学们能够建立完整的知识体系,为后续课程学习和实践应用打下坚实基础第一章计算机系统概论存储系统总线系统包括各级存储器,用于存储程序和连接各个部件,实现数据传输和通数据信处理器输入输出系统负责执行指令,控制计算机系统的实现计算机与外部环境的信息交换运行,是计算机的核心组件计算机系统是由硬件和软件组成的信息处理系统硬件提供物理支持,软件提供逻辑控制两者相互配合,共同完成信息的输入、存储、处理和输出功能冯诺依曼计算机结构·运算器执行算术和逻辑运算控制器控制指令的执行过程存储器存储程序和数据输入/输出设备实现人机交互冯诺依曼计算机结构是现代计算机的基础,它提出了存储程序原理,即将程序和数据一起存储在存·储器中这一结构以运算器为中心,控制器从存储器中取出指令并控制其执行过程存储程序原理是计算机发展的重要里程碑,使计算机具备了通用性,可以通过改变程序来执行不同的任务,而不需要更改硬件结构现代计算机结构冯诺依曼结构现代计算机结构·以运算器为中心以存储器为中心运算器、控制器分离集成运算器和控制器CPU输入输出设备直接与运算器相连采用层次化存储体系单一总线连接各部件多级总线连接各部件现代计算机结构在冯诺依曼结构的基础上进行了改进,最显著的变化是从以运算器为中心转变为以存储器为中心这种转变主要是为了解·决冯诺依曼瓶颈问题,即存储器带宽限制了系统性能·现代计算机将运算器和控制器集成为中央处理器(),并引入了多级存储体系和复杂的总线结构,以提高系统的整体性能CPU计算机系统的层次结构应用软件为用户提供服务的程序系统软件操作系统、编译器等固件微程序、驱动程序硬件系统处理器、存储器、总线等计算机系统通常采用层次化结构,从底层的硬件到顶层的应用软件,每一层都为上一层提供服务这种层次结构使复杂的计算机系统变得易于理解和管理硬件系统是计算机的物理基础,提供基本运算和存储功能软件系统在硬件基础上提供逻辑控制和功能实现,分为系统软件和应用软件两大类固件则位于软硬件之间,是烧录在硬件中的软件程序计算机性能指标机器字长运算速度一次能处理的二进制数据衡量执行指令的速度,常CPU CPU位数,通常为位或位用指标包括时钟频率()、3264GHz字长越长,处理数据的能力越(每条指令的时钟周期数)CPI强和(每秒执行的百万条MIPS指令数)存储容量计算机能存储的信息量,包括内存容量和外存容量,通常以或为GB TB单位容量越大,能存储的程序和数据越多计算机性能指标是评价计算机系统性能的重要参数除上述三个基本指标外,还有其他指标如系统总线带宽、吞吐量、响应时间等,它们共同反映了计算机系统的处理能力和工作效率第二章运算方法和运算器数据表示方法定点数与浮点数各种编码方式算术运算加、减、乘、除定点运算与浮点运算逻辑运算与、或、非、异或移位操作运算器结构设计ALU运算控制运算方法和运算器是计算机系统的核心部分,负责执行各种算术和逻辑运算本章将详细讲解数据在计算机中的表示方法,以及各种运算的实现原理和电路设计理解运算方法和运算器的工作原理,有助于我们深入理解计算机如何处理数据,以及如何优化算法以提高运算效率数据的表示定点数浮点数补码表示法小数点位置固定的数小数点位置可变的数最常用的有符号数表示方法定点整数小数点隐含在最右边组成符号位阶码尾数正数与原码相同••++••定点小数小数点隐含在最左边•科学计数法N=M×r^E•负数对应正数的补码表示范围有限,但运算简单表示范围大,但运算复杂便于加减运算的统一处理计算机中的数据都以二进制形式表示对于整数,通常采用原码、反码或补码表示;对于实数,则采用定点数或浮点数表示补码是最常用的有符号数表示法,它使加减运算统一处理,简化了硬件设计浮点数标准IEEE754格式总位数符号位阶码位尾数位偏移量单精度321823127(位)32双精度64111521023(位)64是目前最广泛使用的浮点数表示标准,由美国电气电子工程师协会()IEEE754IEEE制定该标准定义了浮点数的格式、舍入规则、特殊值和异常处理等内容标准中,浮点数由三部分组成符号位()、阶码()和尾数()IEEE754S EM阶码使用偏移表示法,单精度偏移量为,双精度偏移量为标准还定义了1271023特殊值如零、无穷大、非数值()等NaN理解标准有助于我们掌握浮点数的精度和范围限制,避免在程序设计中出IEEE754现浮点数计算误差定点数的加减运算原码加法符号位单独处理,数值部分直接相加补码加减法统一为加法运算,简化电路设计溢出检测判断结果是否超出表示范围定点数的加减运算是计算机中最基本的运算对于补码表示的定点数,减法可以转换为加法来处理,即,其中是的补码这A-B=A+-B-B B种统一处理方式大大简化了的设计ALU在补码加法中,如果两个操作数符号相同,而结果符号不同,则表示发生了溢出溢出检测是定点数运算中的重要环节,用于确保运算结果的正确性补码加减法的硬件实现通常采用全加器()电路,通过级联多个全加器组成多位加法器,实现任意位数的加减运算Full Adder定点数的乘除运算原码一位乘法类似手工乘法,根据乘数的每一位决定是否将被乘数左移后相加算法Booth补码乘法的优化算法,可以处理连续的,减少加法次数1定点数除法使用恢复余数法或不恢复余数法,过程类似于手工除法定点数的乘除运算比加减运算复杂得多乘法通常采用移位和加法的组合来实现,而除法则是移位和减法的组合由于硬件实现的复杂性,早期计算机的乘除运算速度明显慢于加减运算算法是一种优化的补码乘法算法,它通过对乘数中连续的进行编码,减少了加Booth1法操作的次数,提高了乘法运算的效率现代计算机普遍采用改进的算法实现Booth乘法运算浮点数的加减运算对阶调整小阶数,使两数阶码相等尾数运算对对齐后的尾数进行加减运算规格化调整结果,使尾数满足规格化要求舍入处理溢出位,确保结果精度浮点数加减运算比定点数复杂,主要包括对阶、尾数运算、规格化和舍入四个步骤对阶是将小阶码的浮点数尾数右移,使两个操作数的阶码相等尾数对齐后进行加减运算,得到结果后需要进行规格化处理,使尾数满足标准的规格化要求IEEE754舍入是浮点运算的最后一步,用于处理因对阶或规格化产生的多余位,以确保结果的精度IEEE标准定义了四种舍入模式向最近舍入、向零舍入、向正无穷舍入和向负无穷舍入754浮点数的乘除运算浮点数乘法浮点数除法•阶码相加(减去偏移量)•阶码相减(加上偏移量)•尾数相乘•尾数相除•结果规格化•结果规格化•舍入处理•舍入处理浮点数乘除运算比加减运算相对简单,因为不需要对阶操作对于乘法,只需将两个浮点数的阶码相加(需要减去偏移量),将尾数相乘对于除法,则是将阶码相减(需要加上偏移量),将尾数相除在浮点乘除运算中,需要特别注意特殊值的处理,如零、无穷大和等例如,任何非零数乘以零得零,任何有限数除以零得无穷大,NaN零除以零或无穷大除以无穷大得这些特殊情况的处理需要遵循标准的规定NaN IEEE754的基本结构ALU算术逻辑单元()是的核心部件,负责执行各种算术和逻辑运算通常分为两部分算术运算单元和逻辑运算单元算术运ALU CPU ALU算单元执行加、减、乘、除等算术运算,逻辑运算单元执行与、或、非、异或等逻辑运算以及移位操作的输入包括两个操作数和操作码,输出包括运算结果和状态标志(如进位、溢出、零标志等)运算控制部分根据操作码控制各个部ALU件的工作,实现不同的运算功能现代中的通常采用流水线结构,将复杂运算分解为多个简单步骤,提高运算效率CPUALU第三章存储系统存储层次结构主存储器从速度快、容量小的寄存器到速度慢、容量和的工作原理与特性SRAM DRAM大的外存辅助存储器4存储器Cache磁盘、固态硬盘等永久存储设备提高访存速度的缓冲技术存储系统是计算机系统的重要组成部分,用于存储程序和数据由于速度、容量和成本的制约,现代计算机采用多级存储体系结构,包括寄存器、、主存和辅存等多个层次Cache本章将详细介绍各级存储器的工作原理、性能特点和应用场景,重点讨论与主存的工作协调关系,以及虚拟存储技术的实现机制Cache存储器的层次结构寄存器速度最快,容量最小,成本最高Cache速度快,容量小,成本高主存速度中等,容量中等,成本中等辅存4速度慢,容量大,成本低存储器的层次结构是为了解决速度、容量和成本之间的矛盾从寄存器到辅助存储器,速度逐渐降低,而容量逐渐增大,成本逐渐降低这种层次结构利CPU用了程序的局部性原理,使计算机系统能够以接近最快存储器的速度,获得接近最大存储器的容量局部性原理包括时间局部性(最近访问过的数据可能很快再次被访问)和空间局部性(当前访问的数据附近的数据可能很快被访问)存储层次结构正是利用这些特性,通过缓存技术提高系统性能主存储器SRAM(静态随机存取存储器)DRAM(动态随机存取存储器)ROM(只读存储器)基于触发器电路基于电容存储电荷只能读出不能写入•••只要通电就能保持数据需要周期性刷新断电后数据不丢失•••速度快,功耗高,成本高速度较慢,功耗低,成本低多种类型、、、•••MROM PROMEPROM、主要用于主要用于主存EEPROM Flash•Cache•主要用于存储固件•主存储器是计算机系统中直接与交换信息的存储器,通常采用半导体存储器技术实现和是两种主要的随机存取存储器类型,它们在实现原理、性能特CPU SRAMDRAM点和应用场景上存在显著差异主存的读写操作需要遵循特定的时序要求读操作时,通过地址总线发送地址,然后通过控制总线发送读信号,主存将相应地址的数据通过数据总线送回写操CPU CPU作则是同时发送地址和数据,并通过控制总线发送写信号,将数据写入主存的指定地址CPU存储器Cache的工作原理的映射方式Cache Cache是位于和主存之间的小容量、高速缓冲存储器,用于直接映射主存块只能映射到固定的行Cache CPU•Cache存放近期可能用到的指令和数据当访问主存时,先查CPU CPU全相联映射主存块可以映射到任意行•Cache找,如果所需数据在中(命中),则直接从读Cache Cache Cache组相联映射主存块可以映射到固定组内的任意行•取,大大提高了访存速度的性能主要由命中率和缺失惩罚决定命中率是指访问时,所需数据在中的概率缺失惩罚是指未命中时,Cache CPU Cache Cache Cache从主存读取数据所需的额外时间提高命中率和减少缺失惩罚是设计的主要目标Cache现代通常采用多级结构,如、、,形成更细致的存储层次通常分为指令和数据,以CPUCache L1L2L3CacheL1CacheCacheCache避免指令和数据访问的冲突替换算法CacheLRU(最近最少使用)替换最长时间未被访问的块,需要记录每个块的访问时间,实现复杂但效果好FIFO(先进先出)替换最早调入的块,实现简单,但未考虑访问频率Cache随机替换随机选择一个块进行替换,实现最简单,性能一般LFU(最不经常使用)替换访问次数最少的块,需要记录访问计数,适合访问模式稳定的情况替换算法在已满且需要调入新块时,决定替换哪个现有的块好的替换算CacheCacheCache法能够提高的命中率,从而提升系统性能不同的算法在实现复杂度和效果之间有不同Cache的权衡除了基本的替换算法外,还有一些改进算法,如()、NRU NotRecently UsedARC()等现代处理器通常采用或其近似算法作为Adaptive ReplacementCache LRUCache替换策略虚拟存储器虚拟地址生成程序产生虚拟地址地址转换将虚拟地址转换为物理地址MMU缺页检查检查页是否在内存中页面置换如有必要,从磁盘调入所需页面虚拟存储技术是操作系统的重要组成部分,它使程序可以使用比实际物理内存更大的地址空间虚拟存储器将程序的地址空间分成固定大小的页(页式管理)或不固定大小的段(段式管理),只将当前需要的页或段调入内存,其余部分保存在磁盘上地址转换是虚拟存储系统的核心,通常由内存管理单元()硬件支持为了提高地址转换的速MMU度,现代都配备了转换后备缓冲器(),它缓存了最近使用的地址映射关系CPU TLB辅助存储器磁盘存储器()固态硬盘()HDD SSD利用磁性材料存储数据基于闪存()技术••Flash包含盘片、磁头、盘片驱动装置无机械部件,读写速度快••数据按磁道、扇区组织功耗低,抗震性好••价格低,容量大,但速度慢价格较高,写入次数有限••辅助存储器(或外存)是计算机系统的永久存储设备,用于存储大量数据和程序与主存不同,辅存在断电后仍能保持数据不丢失磁盘存储器和固态硬盘是当前最常见的辅存设备磁盘存储器的存取速度受限于机械部件的移动时间,主要包括寻道时间、旋转延迟和数据传输时间固态硬盘消除了机械部件,大幅提高了随机访问性能,但写入寿命有限,需要特殊的磨损平衡算法延长使用寿命第四章指令系统指令系统是计算机硬件和软件的接口,定义了计算机能够执行的基本操作一个完整的指令系统包括指令格式、操作码、寻址方式、数据类型和指令功能等多个方面本章将系统介绍指令系统的基本概念,包括指令格式的设计原则、常见的寻址方式及其特点,以及和两种不同指令系统的设计CISC RISC思想和比较通过本章学习,将加深对计算机工作原理的理解,为后续高级语言程序设计打下基础指令格式一地址指令格式操作码地址码+隐含使用累加器二地址指令格式操作码地址码地址码+1+2结果覆盖第一个操作数三地址指令格式操作码地址码地址码地址码+1+2+3结果存入第三个地址零地址指令格式仅包含操作码用于堆栈计算机指令格式定义了指令的长度和组成部分每条指令通常由操作码和地址码两部分组成,操作码指明要执行的操作类型,地址码指明操作数的位置根据地址码的数量,指令格式可分为零地址、一地址、二地址和三地址等多种类型从指令长度的角度,可将指令格式分为定长指令格式和变长指令格式定长指令格式实现简单,但灵活性不足;变长指令格式则能更有效地利用存储空间,但实现复杂度较高寻址方式立即寻址直接寻址操作数直接在指令中给出,无需访存,速度最快指令中给出操作数的有效地址,只需一次访存间接寻址寄存器寻址指令中给出操作数地址的地址,需要多次访存操作数在寄存器中,无需访存,速度快基址寻址变址寻址操作数地址基址寄存器内容指令中的偏移量操作数地址指令中的基址变址寄存器内容=+=+寻址方式定义了如何获取操作数的有效地址合理的寻址方式设计有助于减少指令长度、提高编码效率,并支持高级编程概念如数组、指针等不同的寻址方式有不同的适用场景和性能特点除了基本寻址方式外,许多计算机还提供组合寻址方式,如基址变址寻址、相对寻址等,以增强指令系统的灵活性和表达能力和CISC RISC(复杂指令集计算机)(精简指令集计算机)CISC RISC指令数量多,功能复杂指令数量少,功能简单••指令长度可变指令长度固定••寻址方式丰富寻址方式简单••硬件实现复杂,微程序控制硬件实现简单,硬布线控制••代表架构代表架构•x86•ARM和代表了两种不同的处理器设计哲学强调单条指令的功能,希望通过复杂指令减少程序的指令数量;则强调指令CISC RISCCISC RISC的执行效率,通过简化指令实现流水线执行,提高整体性能随着技术发展,现代处理器设计已经融合了和的优点例如,的处理器虽然保持指令集的兼容性,但内部实现CISC RISCIntel x86CISC采用了许多的设计理念,如将复杂指令分解为微操作()后再执行RISC micro-ops第五章中央处理器()CPU基本组成指令执行运算器、控制器和寄存器组取指令、分析指令、执行指令的过程高级技术数据通路流水线、超标量等提升性能的技术数据在内部的传输路径CPU中央处理器()是计算机系统的核心部件,负责执行指令、处理数据和控制系统运行现代通常集成了运算器、控制器和寄存器组等多个CPU CPU功能单元,并采用多种高级技术提升性能本章将深入讲解的内部结构和工作原理,包括指令执行过程、数据通路设计和控制器实现等内容,并介绍流水线、分支预测、超标量等现代CPU的关键技术CPU的基本组成CPU运算器控制器寄存器组内部总线执行算术和逻辑运算,核控制和协调计算机各部件内部的高速存储单元,连接内部各个部件,CPU CPU心部件是(算术逻辑工作,解释并执行指令用于暂存指令、数据和地实现数据传输ALU单元)址的基本组成反映了冯诺依曼计算机结构的核心概念运算器负责数据处理,控制器负责指令控制,寄存器组提供快速数据访问,内部总线连接CPU·各个部件形成完整的处理系统寄存器组是内部最重要的部件之一,通常包括通用寄存器、程序计数器()、指令寄存器()、状态寄存器()等多种类型这些CPU PC IR PSW寄存器共同支持的工作,提供指令执行所需的临时存储空间CPU指令执行过程取指令(IF)从指示的地址取出指令,放入,并更新PCIR PC分析指令(ID)解码指令,确定操作类型和操作数地址执行指令(EX)取操作数,执行指定的操作存储结果(WB)将操作结果写回寄存器或存储器指令执行过程是工作的基本循环,也称为指令周期在每个指令周期中,至少完成取指令和执行指令两个基本步骤现代通常将指令执行过程细分为更多阶段,以便实现流水线处理CPU CPU CPU取指令阶段是指令周期的第一步,从程序计数器()指示的存储单元取出指令,放入指令寄存器(),并更新指向下一条指令分析指令阶段解码指令,确定要执行的操作和操作数地址执行指令阶段完成指CPU PCIRPC令规定的操作,最后将结果存入指定位置数据通路单总线结构多总线结构所有部件共享一条总线使用多条并行总线结构简单,成本低结构复杂,成本高••部件间数据传输需依次进行部件间数据传输可并行进行••执行速度较慢执行速度快••数据通路是内部数据传输的物理路径,决定了执行指令的具体方式数据通路的设计直接影响的性能和实现复杂度根据CPU CPU CPU总线数量和组织方式,数据通路可分为单总线结构和多总线结构现代通常采用多总线结构,以支持高度并行的指令执行例如,同时进行指令读取、操作数访问和结果写回等操作数据通路设计需CPU要考虑性能、成本和功耗等多种因素,在各项指标之间找到合适的平衡点控制器的功能与组成微程序控制器硬布线控制器将每条机器指令解释为一系列微操作使用组合逻辑电路产生控制信号控制存储器存放微程序直接由指令生成控制信号••微指令序列实现一条机器指令无需微程序解释••设计灵活,易于修改设计固定,难以修改••执行速度较慢执行速度快••控制器是的指挥中心,负责协调内部各部件的工作,控制指令的执行流程控制器的主要功能包括取指令、分析指令、产生控制CPU CPU信号和处理中断等根据实现方式,控制器可分为微程序控制器和硬布线控制器两种微程序控制器和硬布线控制器各有优缺点微程序控制器设计灵活,易于实现复杂指令集,但执行速度较慢;硬布线控制器执行速度快,但设计复杂,难以修改现代通常综合两种方法,对常用简单指令采用硬布线控制,对复杂指令采用微程序控制CPU流水线技术取指令(IF)从存储器读取指令指令译码(ID)解析指令,读取寄存器执行(EX)执行运算或计算地址存储访问(MEM)访问数据存储器写回(WB)将结果写入寄存器流水线技术是提高性能的重要方法,它将指令执行过程分为多个阶段,使各阶段能够并行工作,提高指令吞吐率经典的五级流水线包括取指令()、指令译码CPU IF()、执行()、存储访问()和写回()五个阶段ID EXMEM WB在理想情况下,流水线能够使处理器的吞吐率提高倍(为流水线阶段数)但实际上,由于流水线冒险()的存在,真实性能提升通常小于理论值现代N Nhazards CPU的流水线深度可能达到十几级甚至更多,以提高时钟频率和指令吞吐率流水线的冒险结构冒险数据冒险多条指令同时使用同一硬件资源指令依赖于前面指令的结果解决方法增加硬件资源、流水线停解决方法数据转发、编译器调度、顿流水线停顿控制冒险分支指令改变程序流程解决方法分支预测、延迟分支、分支目标缓冲流水线冒险是阻碍流水线性能发挥的主要因素,可分为结构冒险、数据冒险和控制冒险三类结构冒险发生在硬件资源冲突时,数据冒险发生在指令间存在数据依赖时,控制冒险发生在执行分支指令时解决流水线冒险的方法多种多样数据转发()是解决数据冒险的有效技forwarding术,它允许将计算结果直接从一个流水线阶段转发到另一个阶段,而不必等待写回分支预测则是解决控制冒险的关键技术,通过预测分支结果减少流水线停顿分支预测静态分支预测动态分支预测基于固定规则进行预测根据程序执行历史进行预测总是预测分支不发生一位预测(最后一次历史)••总是预测分支发生二位预测(状态机)••根据分支方向预测(向前不跳转,向后跳转)相关预测(考虑多个分支关系)••预测(多种预测器组合)•Tournament实现简单,准确率有限实现复杂,准确率高分支预测是解决控制冒险的重要技术,通过预测分支指令的结果,减少流水线停顿,提高处理器性能根据预测方法,分支预测可分为静态预测和动态预测两大类现代处理器通常采用复杂的动态分支预测算法,如基于深度学习的分支预测器,其预测准确率可达以上为支持分支预测,处理器还95%配备了分支目标缓冲器()和返回地址堆栈()等专用硬件,进一步提高预测效率BTB RAS超标量技术2-8发射宽度现代处理器每周期可发射的指令数50+重排序缓冲器容量支持乱序执行的指令数量100+保留站数量可等待执行的指令队列容量200+物理寄存器数支持寄存器重命名的物理寄存器数量超标量技术是现代高性能处理器的关键技术,它允许处理器在一个时钟周期内同时执行多条指令,大幅提高指令级并行度超标量处理器需要复杂的硬件支持,包括多个功能单元、指令重排序缓冲器、寄存器重命名等机制与超标量紧密相关的是乱序执行技术,它允许处理器改变指令的执行顺序,只要不违反程序的数据依赖关系乱序执行可以有效隐藏指令延迟,提高硬件资源利用率寄存器重命名技术则通过消除假数据依赖(写后写、写后读),进一步提高指令级并行度第六章总线系统总线概念连接计算机各部件的公共通信通道总线分类片内总线、系统总线、通信总线总线仲裁解决多设备竞争总线使用权的机制总线标准、、等常见总线标准PCI USBSATA总线是计算机系统中连接各个部件的公共通信通道,通过总线,不同的功能部件可以互相交换数据总线的设计和性能直接影响整个计算机系统的性能一般而言,总线包括地址线、数据线和控制线三部分本章将深入介绍总线的基本概念、工作原理、性能指标以及常见的总线标准,帮助理解计算机内部不同部件之间如何进行数据交换和通信总线的基本概念通信总线计算机与外部设备的通信接口系统总线连接、主存和接口CPU I/O片内总线内部连接各功能部件CPU总线是计算机系统中各部件之间进行数据传输的公共通道根据连接的部件和范围不同,总线可分为片内总线、系统总线和通信总线三种类型片内总线连接内部的各个功能单元;系统总线连接、主存和接口等主要部件;通信总线则连接计算机与外部设备CPU CPU I/O每种总线都有其特定的功能和性能要求片内总线需要高速率和低延迟;系统总线需要平衡速度和兼容性;通信总线则需要考虑标准化和互操作性理解这些不同类型总线的特性和应用场景,有助于全面把握计算机系统的数据传输机制总线仲裁集中仲裁分布仲裁由单一仲裁器决定总线使用权设备间自行协商总线使用权链式查询方式自举方式••计数器定时查询方式冲突检测方式••独立请求方式•无中央控制,可靠性高控制简单,容易实现总线仲裁是解决多个设备竞争总线使用权的机制当多个主设备同时请求使用总线时,仲裁机制决定哪个设备获得总线控制权根据仲裁决策的方式不同,总线仲裁可分为集中仲裁和分布仲裁两种方式不同的仲裁方式有不同的优缺点集中仲裁实现简单,但中央仲裁器可能成为单点故障;分布仲裁无中央控制点,可靠性高,但实现复杂在实际系统中,仲裁方式的选择需要考虑系统规模、性能要求、成本和可靠性等多种因素总线的性能指标总线宽度总线带宽总线上一次能够传输的数据位数,单位时间内总线能够传输的数据量,通常为、、或位总线通常以或为单位总8163264MB/s GB/s宽度越大,一次传输的数据量越大,线带宽=总线宽度×总线频率,是衡传输效率越高量总线传输能力的重要指标总线复用同一组物理线路在不同时间段传输不同类型的信息例如,地址数据复用总线/在一个周期传输地址,在另一个周期传输数据,减少了总线线路数量总线性能直接影响计算机系统的整体性能总线宽度决定了一次传输的数据量,总线频率决定了传输速度,两者共同决定了总线带宽除了宽度和带宽外,总线的其他性能指标还包括总线时序、仲裁方式、传输模式等随着计算机技术的发展,总线设计面临的主要挑战是提高传输带宽和降低延迟现代总线设计普遍采用高频率、宽数据位和串行传输等技术,以提高总线性能常见的总线标准总线类型带宽特点应用总线高性能、可靠内部扩展卡PCI133MB/s-533MB/s总线点对点、高速图形卡、高速存储PCIe250MB/s-32GB/s总线即插即用、热插拔外部设备连接USB12Mbps-40Gbps总线串行传输、专用硬盘、光驱SATA150MB/s-600MB/s随着计算机技术的发展,出现了多种总线标准,用于不同的应用场景(外设组件互连)PCI总线曾是连接内部扩展卡的主要标准,现已被更高速的()取代PCIe PCIExpress USB(通用串行总线)是目前最广泛使用的外设连接标准,具有即插即用和热插拔功能SATA(串行高级技术附件)总线则主要用于连接存储设备这些总线标准在带宽、连接方式、供电能力等方面各有特点了解这些特点有助于选择合适的接口和设备,优化系统性能随着技术发展,这些标准也在不断更新,提供更高的带宽和更好的功能第七章输入输出系统接口控制方式I/O I/O连接和外设的桥梁程序查询、中断、CPU DMA软件外部设备I/O设备驱动程序、库输入设备和输出设备I/O输入输出系统是计算机系统中负责信息交换的重要部分,它通过各种控制方式和接口,实现与外部设备之间的数据传输一个完整的CPU系统包括硬件和软件两部分,硬件部分包括接口和各种外部设备,软件部分包括设备驱动程序和库I/O I/O I/O本章将详细介绍系统的基本概念、控制方式、外部设备特性等内容,帮助理解计算机如何与外部世界进行信息交换I/O I/O系统的基本概念I/O接口控制方式I/O I/O接口是与外设之间的接口电路,负责实现二者之间的数据控制方式决定了与外设之间的数据传输方式和控制方式I/O CPU I/O CPU传输和信号转换接口通常包括数据寄存器、状态寄存器和控常见的控制方式包括I/O I/O制寄存器等部件程序查询方式不断轮询设备状态•CPU数据寄存器暂存传输数据•中断方式设备就绪时通知•CPU状态寄存器反映设备当前状态•方式外设直接与主存交换数据•DMA控制寄存器接收的控制命令•CPU通道方式由专门的处理器控制•I/O系统是计算机与外部世界进行信息交换的桥梁随着计算机应用领域的扩展,系统的种类和性能要求也越来越多样化现代计算机I/O I/O普遍采用中断和等高效的控制方式,以减轻负担,提高系统整体性能DMA I/O CPU程序查询方式发送命令向设备发送命令CPUI/O查询状态不断检查设备状态寄存器CPU等待就绪直到设备准备好数据传输与设备交换数据CPU程序查询方式是最简单的控制方式,由通过不断查询设备的状态,确定设备是否就绪,I/O CPUI/O然后进行数据传输这种方式不需要特殊的硬件支持,实现简单,但需要不断查询设备状态,浪CPU费了大量的处理能力程序查询方式的优点是硬件要求低,程序逻辑简单,适用于简单系统和对实时性要求不高的场景缺点是利用率低,等待设备就绪的过程中处于忙等状态,无法执行其他任务随着中断和CPUCPU等更高效控制方式的出现,程序查询方式在现代计算机中的应用已经较少DMA中断方式发起请求I/O向设备发送命令后继续执行其他程序CPUI/O设备完成操作设备完成操作后向发送中断请求CPU响应中断CPU保存当前程序状态,跳转到中断服务程序执行中断服务完成数据传输,然后返回原程序继续执行中断是指接收到外部设备的通知信号后,暂停当前程序的执行,转而处理该信号的机制CPU中断方式的控制允许在发出命令后继续执行其他任务,当设备完成操作后通过中I/O CPUI/O断机制通知,大大提高了的利用率CPUCPU中断系统通常包括中断请求、中断判优、中断响应和中断返回四个阶段现代计算机普遍支持多级中断和可屏蔽中断,以处理不同优先级的中断请求中断方式适用于大多数操作,I/O特别是那些处理时间较长但数据量不大的操作方式DMACPU启动DMA控制数据传输设置控制器,指控制器直接控制系统总数据直接在外设和主存之间CPU DMA DMA定数据源、目标和传输量线和存储器传输,无需干预CPU完成通知传输完成后,控制器向DMA发送中断信号CPU直接存储器访问()是一种高效的控制方式,它允许外设在最小干预下直接与DMA I/O CPU主存交换数据传送过程中,只需在开始时设置控制器的相关参数,然后就DMA CPU DMA可以执行其他任务,控制器负责完成整个数据传输过程DMA方式特别适合大量数据传输的场景,如磁盘读写和网络通信相比于中断方式,DMADMA方式减少了干预,降低了系统开销,提高了数据传输效率现代计算机系统中,已CPUDMA成为高速设备的标准控制方式I/O设备I/O设备是计算机系统与外部环境进行信息交换的工具,可以分为输入设备、输出设备和输入输出设备三类输入设备将外部信息转换为I/O计算机可处理的数据形式,如键盘、鼠标、扫描仪等;输出设备则将计算机处理结果以人类可理解的形式呈现出来,如显示器、打印机、音箱等现代计算机系统支持种类繁多的设备,每种设备都有其特定的接口标准和控制方式了解常见设备的特性和接口类型,有助于合理I/O I/O选择和使用这些设备,提高人机交互效率随着技术发展,新型设备如触摸屏、体感设备、虚拟现实设备等不断涌现,为人机交互提I/O供了更加自然和高效的方式第八章计算机系统可靠性差错控制通过编码技术检测和纠正数据传输或存储中的错误冗余技术通过增加备份部件提高系统可靠性容错技术使系统能够在部分组件故障的情况下继续正常工作故障诊断与恢复检测系统故障并采取恢复措施计算机系统可靠性是指系统在规定条件下和规定时间内完成规定功能的能力随着计算机应用领域的拓展,特别是在关键应用如航空航天、金融交易、医疗设备等领域,系统可靠性变得越来越重要本章将介绍提高计算机系统可靠性的各种技术,包括差错控制编码、冗余设计、容错机制等,帮助理解如何设计和维护高可靠性的计算机系统差错控制奇偶校验码海明码添加一位校验位,使的个数为奇数或偶数添加多个校验位,可检测和纠正错误•1•只能检测奇数个位错误能够纠正单比特错误••实现简单,开销小能够检测双比特错误••不能纠错广泛用于内存纠错••循环冗余校验码(CRC)基于多项式除法,检测能力强•可检测多位突发错误•广泛用于网络通信和存储系统•不能纠错•差错控制是保证数据传输和存储可靠性的重要技术,通过在原始数据中添加冗余信息,使系统能够检测甚至纠正错误不同的差错控制编码有不同的检错和纠错能力,适用于不同的应用场景奇偶校验码是最简单的差错控制编码,但只能检测奇数个位错误;海明码能够检测并纠正单比特错误,广泛应用于内存系统;循环冗余校验码()检测能力强,特别适合检测突发错误,广泛用于网络通信和存储系CRC统可靠性设计模块化设计冗余技术故障检测将系统分解为功能独立的模块,通过增加备份部件,在主要部采用监控机制及时发现系统故便于故障隔离和替换件故障时保持系统功能障自动恢复系统能够在故障发生后自动采取恢复措施可靠性设计是确保计算机系统在各种条件下正常工作的系统工程冗余技术是提高系统可靠性的核心方法,包括硬件冗余、软件冗余和时间冗余等多种形式硬件冗余通过增加备份硬件提高可靠性,如存储系统;软件冗余通过多版本编程减少软件缺陷;时间冗余则通过重复操作检测暂时性故障RAID容错技术使系统能够在部分组件故障的情况下继续正常工作常见的容错机制包括故障检测、故障隔离、故障恢复等现代高可靠性系统如航空电子设备、金融交易系统等都采用了复杂的容错设计,确保系统的持续可用性第九章计算机系统性能评价性能评价指标性能评价方法响应时间理论分析••吞吐率基准程序测试••和系统模拟•MIPS FLOPS•能效比实际应用测试••计算机系统性能评价是衡量和比较不同系统性能的重要手段通过性能评价,可以了解系统的处理能力、响应速度和资源利用效率,为系统选择、优化和升级提供依据本章将详细介绍计算机系统性能评价的指标、方法和工具,包括常用的性能指标如响应时间、吞吐率、和等,以及流行的基MIPS FLOPS准测试程序如、等通过本章学习,将了解如何科学、客观地评价计算机系统性能SPEC CPUTPC性能评价指标
2.5GHz时钟频率处理器的基本工作频率,表示每秒钟的时钟周期数8ns响应时间系统完成一项任务所需的时间1000TPS吞吐率单位时间内系统完成的任务数量25GFLOPS处理能力每秒浮点运算次数,衡量科学计算性能计算机系统性能指标多种多样,不同的指标适用于不同的应用场景响应时间是衡量交互式系统性能的重要指标,表示从用户发出请求到系统做出响应所需的时间;吞吐率则适合衡量批处理系统的性能,表示单位时间内系统能够处理的任务数量(每秒百万条指令数)和(每秒浮点运算次数)是衡量处理器计算能力的常用指标适用于通用计算,而则更适合科学计算和图形处理等MIPS FLOPSMIPS FLOPS领域此外,还有能效比、成本效益比等综合指标,用于全面评价系统性能基准程序SPEC CPU标准性能评估公司()推出的处理器性能测试套件,包含整数和浮点运算基准测试,广泛用于SPEC评估性能CPUTPC事务处理性能委员会()制定的数据库系统性能测试标准,包括(联机事务处理)、TPC TPC-C(决策支持)等,用于评估数据库系统性能TPC-HIOzone文件系统和磁盘性能测试工具,可测试不同操作、不同文件大小下的性能I/O I/OWeb服务基准如和,用于评估服务器和电子商务系统的性能SPECweb TPC-W Web基准程序是一组标准化的测试程序,用于客观评价计算机系统的性能使用基准程序测试可以避免主观判断,提供可比较的性能数据不同的基准程序针对不同的应用领域和系统组件,全面反映系统性能选择合适的基准程序对于准确评价系统性能至关重要理想的基准程序应该具有代表性(反映实际应用)、可重复性(测试结果稳定)和可比较性(适用于不同系统)等特点在实际测试中,通常需要使用多个基准程序来全面评价系统性能第十章并行处理机构并行处理基本概念通过多处理器同时执行提高系统性能并行处理系统分类分类法、、、Flynn SISD SIMD MISD MIMD多处理器系统共享存储和分布存储两种主要结构互连网络与缓存一致性处理器间通信结构和数据一致性维护并行处理是提高计算机系统性能的重要方法,通过多个处理单元同时执行多个任务,大幅提高系统吞吐率随着单处理器性能提升的瓶颈日益明显,并行处理技术成为现代计算机系统的主流设计思路本章将介绍并行处理系统的基本概念、分类方法、结构组织和关键技术,包括多处理器系统架构、互连网络设计和缓存一致性协议等内容,帮助理解并行计算的原理和实现方法分类法Flynn类型指令流数据流特点代表系统单一单一传统顺序计算早期个人计算SISD机机单一多个同一指令同时向量处理器、SIMD处理多个数据GPU多个单一多个指令处理理论模型,实MISD同一数据际较少多个多个多处理器并行多核处理器、MIMD执行集群分类法是最常用的并行计算机分类方法,由迈克尔弗林()于年提出Flynn·Michael Flynn1966该分类法根据指令流和数据流的数量将计算机系统分为四类(单指令流单数据流)、SISD SIMD(单指令流多数据流)、(多指令流单数据流)和(多指令流多数据流)MISD MIMD对应传统的顺序计算机模型;适用于处理规整数据的并行计算,如图像处理和科学计算;SISDSIMD在实际中较为罕见;是最通用的并行处理模型,包括多核处理器、多处理器系统和计算MISDMIMD机集群等现代计算机系统通常集成了多种并行处理模式,不再严格遵循单一类别多处理器系统共享存储多处理器分布存储多处理器所有处理器共享一个全局存储空间每个处理器有自己的局部存储器统一存储访问()各处理器访问内存的时间相同处理器通过消息传递通信•UMA•非统一存储访问()访问本地内存快,远程内存慢没有全局共享存储空间•NUMA•优点简化编程模型,数据共享容易优点良好的可扩展性缺点存储器成为瓶颈,扩展性有限缺点编程复杂,通信开销大多处理器系统是实现并行处理的主要方式,根据存储器组织方式可分为共享存储多处理器和分布存储多处理器两大类共享存储系统中,所有处理器共享同一个全局地址空间,通过共享变量实现通信;分布存储系统中,每个处理器有自己的局部存储器,通过显式的消息传递实现通信在实际应用中,这两种架构各有优缺点,并且常常会采用混合架构,如具有分布共享存储的集群系统理解不同多处理器系统的特点和适用场景,有助于选择合适的并行计算平台和编程模型互连网络互连网络是连接多处理器系统中各处理器和存储器的通信结构,是并行处理系统的重要组成部分互连网络的性能直接影响系统的并行处理能力和可扩展性根据拓扑结构不同,互连网络可分为总线、交叉开关、多级互连网络和直接互连网络等多种类型总线是最简单的互连结构,所有设备共享同一通信通道,实现简单但扩展性差;交叉开关提供全连接,性能高但成本随处理器数量呈平方增长;多级互连网络如网络、蝶形网络等提供了良好的性能和可扩展性折衷;直接互连网络如网格、环、超立方体等则适用于大Omega规模并行系统选择合适的互连网络需要考虑系统规模、性能要求、成本和可靠性等多种因素缓存一致性写操作发生处理器修改本地缓存中的数据一致性协议活动通知其他处理器或更新共享数据缓存状态更新其他处理器更新或失效相关缓存行数据一致性维护确保所有处理器看到一致的数据视图缓存一致性是多处理器共享存储系统中的关键问题当多个处理器各自拥有私有缓存时,同一内存位置的数据可能在多个缓存中存在副本如果某个处理器修改了其缓存中的数据,必须保证其他处理器不会访问到过期的数据,这就是缓存一致性问题常见的缓存一致性协议包括写通过协议和写回协议写通过协议在每次写操作时都将数据同时写入主存,简单但效率较低;写回协议允许数据在缓存中修改而不立即写回主存,但需要复杂的状态管理机制,如协议MESI(、、、)现代多处理器系统普遍采用改进的写回协议来维护缓存一致Modified ExclusiveShared Invalid性,平衡性能和复杂度第十一章计算机系统展望新型计算架构量子计算、神经形态计算新型存储技术非易失性内存、存储级内存专用处理器加速器、领域特定架构AI系统软件创新新型操作系统、编程模型计算机体系结构正经历快速的发展和变革随着传统冯诺依曼架构遇到性能和能效瓶颈,新型计算架构和技·术不断涌现,为未来计算机系统发展提供了新的方向本章将探讨计算机系统的未来发展趋势,包括量子计算、神经网络处理器等新型计算架构,以及它们可能带来的技术革新和应用变革通过展望未来技术发展,帮助理解计算机体系结构的演进方向量子计算量子比特量子门量子计算机量子计算的基本单位,可同时处于多个状态,量子计算中的基本操作单位,包括单比特门和利用量子力学原理处理信息的计算机,有望解实现超级并行计算多比特门决经典计算机难以解决的问题量子计算是一种基于量子力学原理的计算范式,利用量子叠加、量子纠缠等现象实现并行计算与经典计算机使用比特(或)不同,量子计算机01使用量子比特(),一个量子比特可以同时处于多个状态的叠加qubit量子计算在某些特定问题上具有巨大优势,如大数分解(算法)和数据库搜索(算法)尽管目前量子计算机仍处于早期发展阶段,Shor Grover面临退相干、容错等技术挑战,但它代表了未来计算技术的重要发展方向,有可能在密码学、材料科学、药物发现等领域带来革命性突破神经网络处理器(张量处理单元)(神经网络处理器)TPU NPU谷歌开发的专用集成电路为神经网络处理专门设计的芯片针对框架优化专用硬件加速单元•TensorFlow•高度并行的矩阵运算高度优化的内存架构••比和更高的能效比低精度计算支持•CPU GPU•主要用于深度学习训练和推理主要面向移动设备和边缘计算••神经网络处理器是为深度学习等人工智能应用专门设计的处理器,与通用和相比,它们在特定的神经网络计算任务上具有更高CPU GPU的性能和能效和是当前最具代表性的神经网络处理器,它们通过硬件加速矩阵运算、优化内存架构等方式,大幅提高了深度TPU NPU学习应用的执行效率随着人工智能技术的快速发展,神经网络处理器正变得越来越重要从数据中心到边缘设备,从云计算到物联网,神经网络处理器正在各种场景中发挥作用未来,随着神经形态计算等技术的发展,神经网络处理器将进一步融合生物启发的计算原理,创造出更高效、更智能的计算系统总结与展望基础知识技术发展掌握计算机组成原理的核心概念和基本原理了解计算机体系结构的演进历程和未来趋势2实践应用系统观念将理论知识应用于实际系统设计和优化3建立硬件、软件协同工作的整体系统观计算机组成原理是计算机科学与技术的基础课程,通过本课程的学习,我们系统地了解了计算机的基本组成、工作原理和关键技术从冯诺依曼结构到现代计·算机架构,从单核处理器到并行计算系统,计算机技术在不断发展和创新随着摩尔定律逐渐接近物理极限,传统计算架构正面临前所未有的挑战未来的计算机系统将更加多样化,包括专用处理器、新型存储技术、量子计算等创新方向理解计算机组成原理的重要性不仅在于掌握现有技术,更在于为理解和参与未来计算技术的发展奠定基础。
个人认证
优秀文档
获得点赞 0