还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机组成原理欢迎学习计算机组成原理课程本课程将深入探讨计算机系统的基本构成、工作原理及核心技术,帮助大家理解计算机硬件与软件的交互方式通过本课程的学习,您将掌握从底层电路到高级系统架构的完整知识体系,建立对现代计算机系统的全面认识我们将从计算机基本组成开始,逐步深入到处理器、存储系统、总线以及输入输出系统等核心组件无论您是计算机科学专业的学生,还是对计算机底层原理感兴趣的爱好者,这门课程都将为您打开计算机科学奇妙世界的大门课程目标与学习要点理解计算机系统掌握计算机系统的基本组成和工作原理,理解各个部件之间的协同工作方式,建立完整的计算机系统知识体系掌握核心概念深入学习处理器设计、内存管理、指令系统等计算机组成的核心概念,掌握计算机硬件的基本工作机制实践应用能力通过实验和案例分析,培养解决实际问题的能力,为后续深入学习计算机架构和系统设计奠定基础性能分析能力学习计算机系统性能评估的方法,能够分析不同设计方案的优缺点,理解现代计算机设计的权衡因素计算机系统的基本组成运算器计算机系统的核心部件之一,负责执行各种算术运算和逻辑运算包含算术逻辑单元、累加器和状态寄存器等组件,能够处理各种数据计算任务控制器控制整个计算机系统的操作,解释并执行指令控制器从内存中获取指令,分析其操作码和操作数,然后产生适当的控制信号,协调各个部件的工作存储器存储程序和数据的部件,分为主存储器和辅助存储器主存储器(内存)直接与CPU交换信息,辅助存储器(硬盘等)提供大容量的长期存储空间输入输出设备实现计算机与外部世界交互的设备输入设备(如键盘、鼠标)将信息输入计算机,输出设备(如显示器、打印机)将计算机处理结果展示给用户冯诺依曼结构·存储程序概念程序和数据都以二进制形式存储在同一个存储器中,计算机能够自动执行存储的程序指令这一概念是现代计算机的基础,使计算机成为通用的信息处理系统五大基本组成部分冯·诺依曼体系结构包含五个基本部分运算器、控制器、存储器、输入设备和输出设备其中运算器和控制器共同构成中央处理单元(CPU)指令顺序执行指令按照存储顺序依次取出并执行,形成指令周期取指令、分析指令、执行指令、指向下一条指令这种简单而高效的执行模式成为现代计算机的基本工作方式内存瓶颈挑战存储器和处理器之间的数据传输成为性能瓶颈,这就是著名的冯·诺依曼瓶颈现代计算机设计中引入缓存等多级存储体系来缓解这一问题现代计算机系统层次结构应用软件层面向用户的应用程序1系统软件层2操作系统和各种系统服务指令系统层3机器语言和汇编语言微体系结构层4处理器内部实现逻辑电路层5门电路和触发器现代计算机系统采用层次化结构设计,每一层都建立在下层的基础上,向上层提供更高级的抽象和服务最底层是物理设备层,由晶体管和其他电子元件组成;最上层是应用软件层,直接与用户交互这种分层设计使复杂系统变得可管理,每层都有明确的接口和功能不同层次之间通过严格定义的接口进行交互,下层对上层隐藏实现细节,提供抽象服务这种设计方法极大提高了系统的灵活性和可扩展性,是计算机系统能够持续发展的关键因素计算机性能指标
3.6GHz时钟频率处理器内部时钟的震荡频率,通常以赫兹Hz为单位16GFLOPS浮点运算速度每秒执行的浮点运算次数25ns存储器访问时间从发出访问请求到获得数据所需的时间
1.2Gbps数据传输速率单位时间内传输的数据量计算机性能评估通常使用多种指标综合考虑除了上述关键指标外,还包括CPI(每条指令的平均时钟周期数)、MIPS(每秒执行的百万条指令数)、吞吐量(单位时间内完成的任务数)等这些指标从不同角度反映系统性能特征在实际评估中,应用程序的性能测试(如SPEC基准测试)更能反映系统在实际工作负载下的表现不同类型的应用对计算机各个部件的要求不同,因此选择合适的指标进行评估至关重要性能评估结果的解释也应当考虑具体的应用场景和需求数据的表示进制与编码二进制系统其他进制字符编码计算机内部使用的数制系统,基于0和1两八进制以8为基数,使用0-7八个数字ASCII编码使用7位二进制数表示常用字个数字每个二进制位(bit)只有两种状每3位二进制数可以表示为1位八进制数符,包括控制字符、数字、字母和符号等,态,对应电路中的开关状态二进制数使共128个字符用位权展开后,每位的权值是2的幂十六进制以16为基数,使用0-9和A-F共Unicode编码是字符编码的国际标准,16个符号每4位二进制数可以表示为1位可以表示几乎所有语言的字符UTF-8是例如
101.1₂=1×2²+0×2¹+1×2⁰+十六进制数这种表示方法在计算机编程一种可变长编码方式,兼容ASCII编码,1×2⁻¹=4+0+1+
0.5=
5.5中广泛使用,因为它比二进制更紧凑在网络传输中广泛使用定点数和浮点数定点数表示定点数特点数据格式固定,小数点位置不变包括定点整数表示范围有限,运算速度快,但精度和范围受限和定点小数浮点数优势浮点数表示能表示更广范围的数值,适合科学计算使用科学计数法,由符号位、指数和尾数组成IEEE754标准是当今最广泛使用的浮点数表示标准,定义了单精度32位和双精度64位两种主要格式单精度浮点数使用1位符号位、8位指数和23位尾数;双精度浮点数使用1位符号位、11位指数和52位尾数标准还定义了特殊值如无穷大、负无穷大和NaN(非数字)等浮点数运算会引入舍入误差,在某些情况下可能导致精度问题例如,浮点数不适合表示需要精确计算的金融数据理解浮点数的表示方式和精度限制,对于科学计算和软件开发至关重要数据的存储和寻址存储单元计算机存储器的基本单位,每个单元有唯一地址字节和字字节8位是最小可寻址单位,字是CPU一次处理的数据量寻址方式直接寻址、间接寻址、变址寻址和基址寻址等大小端序决定多字节数据在内存中的存储顺序数据在内存中的存放方式对程序执行效率有重要影响现代计算机系统通常采用字节寻址方式,每个字节有唯一的地址对于多字节数据(如整数、浮点数),存在大端序(高位字节存在低地址)和小端序(低位字节存在低地址)两种存储方式不同处理器架构可能采用不同的字节序,在数据交换时需要注意转换内存对齐是另一个重要概念,许多处理器要求数据的地址必须是其大小的整数倍,这样可以提高访问效率编译器通常会自动处理对齐问题,但在某些低级编程场景中,程序员需要手动控制数据对齐算术逻辑单元()概述ALU算术运算功能逻辑运算功能移位运算功能执行加法、减法、乘法、除执行与、或、非、异或等逻执行左移、右移等位移操作,法等算术运算,是计算机系辑运算,能够实现位级操作可用于乘除法的快速实现和统进行数值计算的核心部件和条件判断这些操作是数位操作移位操作在低级编现代ALU通常支持整数和浮据处理和程序控制的基础,程、算法优化和硬件控制中点数运算,能够处理各种数在各种计算任务中广泛使用具有重要作用据格式状态指示通过进位、溢出、零、符号等标志位指示运算结果的状态,为控制单元提供条件判断依据这些标志位是分支指令和条件操作的基础定点数的加减运算对齐操作数确保两个操作数的数据格式一致,包括位数和小数点位置对于整数加减法,通常不需要特殊对齐;对于小数加减法,需要对齐小数点执行二进制加减法按位进行加减运算,考虑进位或借位加法运算中,如果两位相加结果大于1,则产生进位;减法运算可以通过取反加一法转换为加法运算检查溢出判断运算结果是否超出表示范围对于有符号数,当两个同号数相加结果变号,或两个异号数相减结果与被减数符号不同时,表示发生了溢出保存结果和状态将计算结果存入目标寄存器,并设置相关状态标志(如进位、溢出、零、负数等)这些标志对于后续的条件分支指令和错误处理非常重要定点数的乘除运算乘法运算原理除法运算原理定点数乘法基于部分积的累加实现对于每一位乘数,如果该位定点数除法基于试商和部分余数的计算在每一步中,将部分余为1,则将被乘数左移相应位数后加到部分积中;如果为0,则不数与除数比较,如果部分余数大于或等于除数,则商的对应位为1,加这个过程类似于十进制乘法的手工计算方法并从部分余数中减去除数;否则商位为0Booth算法是一种优化的乘法算法,可以减少部分积的数量,提非恢复余数除法是一种常用的硬件除法算法,它通过在每一步中高计算效率它通过对连续的1进行编码,将多个加法操作合并为根据部分余数的符号决定下一步是加还是减,避免了额外的恢复一次加减操作,特别适合硬件实现操作,提高了计算效率浮点数运算对阶将两个浮点数的指数调整为相同值,通常选择较大的指数作为目标指数,较小指数的操作数需要右移尾数位,保持数值不变这一步是浮点数加减运算的必要准备工作尾数运算对对齐后的尾数执行加、减、乘或除运算尾数运算遵循定点数的运算规则,但需要在运算后进行规格化处理,确保结果符合浮点数表示要求结果规格化调整运算结果,使尾数满足标准形式(通常要求尾数的最高有效位为1)规格化过程可能需要左移或右移尾数,并相应调整指数值舍入处理当尾数位数超过表示范围时,需要进行舍入IEEE754标准定义了多种舍入模式,包括向最近值舍入(默认)、向零舍入、向正无穷舍入和向负无穷舍入溢出检查检查最终结果的指数是否超出表示范围如果指数上溢,根据符号位产生正或负无穷大;如果指数下溢,可能产生非规格化数或零算术逻辑单元的设计功能模块设计性能优化为各种运算功能(加、减、乘、除、逻辑运算等)采用并行计算、流水线等技术提高运算速度,减设计专用电路模块,根据操作码选择相应的功能少关键路径延迟,平衡速度和面积开销单元参与运算物理实现功耗控制4将逻辑设计转换为实际的电路布局,考虑时钟分采用动态功耗管理技术,在不同工作模式下调整配、信号完整性和热管理等方面电压和频率,平衡性能和能耗现代ALU设计追求高性能和低功耗的平衡针对不同应用场景,可以有不同的设计侧重点通用处理器的ALU需要支持多种运算,并有较好的通用性;而专用处理器(如图形处理器)的ALU则可以针对特定运算进行优化,提供更高的计算效率在实际设计中,设计师需要考虑面积、速度、功耗和可靠性等多个因素,并在这些因素之间找到最佳平衡点随着集成电路工艺的发展,ALU的设计也在不断演进,以满足日益增长的计算需求指令系统概述指令的基本概念指令的类型指令是计算机执行操作的基本单根据功能可分为数据传送指令、位,每条指令完成一个基本操作算术逻辑指令、控制转移指令、指令由操作码和操作数组成,操输入输出指令等不同类型的指作码指明要执行的操作,操作数令完成不同的操作,共同构成完指明操作的数据或位置指令系整的指令集指令集的设计需要统是计算机软硬件的接口,决定考虑功能完备性、执行效率和硬了计算机的基本功能和性能特征件实现复杂度等因素指令集架构指令集架构ISA是硬件和软件之间的接口,定义了程序员可见的处理器特性,包括指令格式、寻址方式、寄存器组织等常见的指令集架构有x
86、ARM、MIPS、RISC-V等,它们有不同的设计理念和应用场景指令格式和寻址方式指令格式寻址方式指令格式定义了指令中各个字段的排列方式和长度典型的指令寻址方式定义了如何确定操作数的实际地址常见的寻址方式包格式包括操作码字段和操作数字段固定长度指令格式简化了指括令获取和解码,而可变长度指令格式可以提高代码密度•立即寻址操作数直接包含在指令中指令格式设计需要考虑操作码数量、寻址方式数量、寄存器数量•直接寻址指令包含操作数的内存地址等因素良好的指令格式设计可以提高指令的表达能力和执行效•寄存器寻址操作数在寄存器中率•寄存器间接寻址寄存器中存放操作数的地址•变址寻址基址加变址寄存器的内容确定地址和架构比较RISC CISC特性RISC架构CISC架构指令特点简单,数量少,定长格复杂,数量多,变长格式式寻址方式简单且数量有限复杂且种类丰富寄存器使用寄存器数量多,寄存器寄存器数量少,专用寄窗口存器执行方式硬连线控制,单周期或微程序控制,多周期流水线存储器访问只通过Load/Store指令多种指令可访问内存设计理念硬件简单,软件复杂硬件复杂,软件简单性能特点高时钟频率,CPI接近1低时钟频率,较高的CPI中央处理器()概述CPU中央处理单元定义CPU是计算机系统的核心部件,负责指令的获取、解码和执行它由运算器、控制器和寄存器组成,是整个计算机系统的大脑,控制和协调各个部件的工作的物理实现CPU现代CPU通常集成在单个硅芯片上,采用极高的集成度和先进的制造工艺处理器芯片包含数亿甚至数十亿晶体管,形成复杂的数字电路系统性能因素CPUCPU性能受多种因素影响,包括时钟频率、指令集架构、微架构设计、高速缓存大小、分支预测能力等这些因素共同决定了CPU执行程序的效率发展趋势CPUCPU设计从单核向多核发展,并不断提高每个核心的性能和能效专用加速器、异构计算和新型架构是当前CPU设计的重要发展方向的功能和组成CPU算术逻辑单元控制单元执行算术和逻辑运算的硬件单元解释指令并产生控制信号,协调各部件工作高速缓存寄存器组存储频繁访问的指令和数据,缩小CPU与内存储CPU内部临时数据和状态信息存的速度差距中央处理器的核心功能是执行指令在执行过程中,控制单元首先从内存获取指令,然后解码指令以确定所需的操作接着,它协调算术逻辑单元和寄存器组执行指令指定的操作,最后将结果存储回指定位置现代CPU采用复杂的微架构设计,包括指令流水线、乱序执行、分支预测等技术,以提高指令执行效率此外,多级高速缓存层次结构用于减少内存访问延迟,提高系统整体性能CPU还实现了各种工作模式和保护机制,支持多任务操作系统的运行指令周期和指令流水线基本指令周期指令流水线技术指令周期是CPU执行一条指令所需的基本步骤,通常包括指令流水线是一种并行处理技术,将指令执行过程分解为多个阶段,允许多条指令同时处于不同的执行阶段这类似于工业生产•取指令Fetch从内存读取指令线,每个工作站完成特定任务•指令译码Decode解析指令内容流水线的优势•操作数准备Operand获取操作数•指令执行Execute执行操作•提高指令吞吐量,缩短平均执行时间•结果写回Write Back存储结果•硬件资源利用率提高•可以支持更高的时钟频率每条指令都要经历这些基本步骤,不同类型的指令可能需要不同数量的时钟周期来完成流水线的挑战结构冲突、数据相关和控制相关可能导致流水线停顿控制单元的功能指令获取与解码根据程序计数器PC的值,从内存中获取指令,并对指令进行解码,确定要执行的操作和所需的操作数这是指令执行的第一步,为后续操作奠定基础控制信号产生根据解码结果,生成控制各个功能部件的信号,包括ALU操作选择、寄存器读写控制、内存访问控制等这些信号精确协调各部件的动作,确保指令正确执行时序控制确保各种操作按照正确的时序顺序进行,防止时序冲突和数据错误时钟信号分发和同步是控制单元的重要职责,尤其在高速处理器中尤为关键异常处理检测和响应各种异常情况,包括中断请求、非法指令、内存访问错误等当发生异常时,控制单元会中断当前指令流,并转向相应的异常处理程序硬布线控制器工作原理硬布线控制器通过专用逻辑电路直接实现控制功能,将指令的操作码直接映射到控制信号每种操作码对应一组固定的控制信号序列,这些信号通过组合逻辑和时序逻辑电路产生优点运行速度快由于使用专用硬件电路,响应时间短,执行效率高;硬件结构简单对于指令集较小的处理器,控制逻辑相对简单;功耗低与微程序控制相比,通常具有更低的功耗缺点灵活性差一旦设计完成,难以修改或扩展指令集;设计复杂对于复杂指令集处理器,控制逻辑设计非常复杂;维护困难故障诊断和修复相对困难应用场景指令集简单且固定的处理器;对执行速度要求高的RISC处理器;嵌入式系统和专用处理器,如DSP和网络处理器;低功耗应用场景微程序控制器基本原理特点与应用微程序控制器使用微程序实现控制功能,每条机器指令对应一个微程序控制器的主要优点是灵活性高、设计系统化它将控制问微程序,微程序由一系列微指令组成微指令直接控制数据通路题转化为编程问题,便于实现复杂的控制逻辑此外,微程序控中的各个功能部件,如寄存器传送、ALU操作等制便于调试和修改,只需更新控制存储器中的内容,无需改变硬件电路微程序存储在控制存储器Control Store中,通常是ROM或可编程ROM控制器包含微程序计数器μPC、微指令寄存器和相关主要缺点是执行速度较慢,每条机器指令需要执行多条微指令,的译码逻辑执行一条机器指令时,控制器首先获取该指令对应增加了指令执行时间此外,微程序控制器需要额外的控制存储的微程序入口地址,然后按顺序执行微程序中的微指令器,增加了硬件成本和功耗微程序控制广泛应用于复杂指令集计算机CISC,如早期的IBMSystem/360和x86处理器现代处理器中,微程序主要用于实现复杂指令和特殊功能处理器的设计CISC复杂指令集设计CISC处理器支持丰富的指令集,包括多种数据类型、寻址方式和复杂操作单条指令可以完成复杂的功能,如字符串操作、浮点运算等,减少了程序中的指令数量,提高了代码密度内存访问特性允许指令直接操作内存中的数据,不限于Load/Store模式这种设计简化了编程模型,但增加了指令解码和执行的复杂性,可能导致执行效率降低微程序控制实现通常采用微程序控制方式实现复杂指令每条CISC指令对应一段微程序,由多个微指令组成这种实现方式灵活性高,便于实现复杂功能,但执行效率较低现代优化技术现代CISC处理器内部采用RISC核心,将复杂指令解码为简单微操作,并使用指令流水线、乱序执行等技术提高性能这种设计结合了CISC的编程简洁性和RISC的执行效率处理器的设计RISC简化指令集固定长度、格式规整的简单指令,便于快速解码和流水线执行单周期执行多数指令在一个时钟周期内完成,简化控制逻辑,提高执行效率架构Load/Store只有专门的访存指令可操作内存,其他指令只操作寄存器寄存器优化大量通用寄存器,减少访存操作,提高程序执行效率硬连线控制5采用硬连线控制器,执行速度快,硬件实现简单存储系统概述寄存器处理器内部的高速存储单元,访问速度最快1高速缓存2处理器附近的小容量高速存储器,缓解处理器与内存速度差距主存储器3计算机的工作存储区域,存放当前执行的程序和数据外部存储器4容量大、非易失性的长期存储设备,如硬盘、SSD和光盘远程存储5通过网络访问的存储资源,如云存储和分布式文件系统存储系统是计算机系统的重要组成部分,用于存储程序和数据为了平衡性能和成本,现代计算机采用多级存储层次结构,从高速但容量小的寄存器到低速但容量大的外部存储器,形成一个完整的存储体系存储系统的性能主要由访问速度、容量和成本三个因素决定这三个因素之间存在着此消彼长的关系速度越快,容量通常越小,成本越高多级存储层次结构正是为了在这三个因素之间找到平衡点,充分发挥各种存储设备的优势存储器的层次结构主存储器和RAM ROM随机存取存储器只读存储器RAM ROMRAM是计算机的主存储器,用于存储当前运行的程序和数据它ROM用于存储固定的、不常变化的程序和数据,如计算机的启动的特点是可以随机访问任何存储单元,且读写速度相近RAM分程序BIOSROM的特点是非易失性,断电后数据不会丢失现为两种主要类型代ROM主要有以下几种类型•动态RAMDRAM存储密度高,价格低,但需要定期刷新,•可编程ROMPROM一次性可编程,编程后不可更改访问速度较慢主要用作系统主内存•可擦除可编程ROMEPROM通过紫外线照射可擦除,多次•静态RAMSRAM存储密度低,价格高,无需刷新,访问速可编程度快主要用作高速缓存•电可擦除可编程ROMEEPROM通过电信号擦除,方便修改,但写入速度慢RAM是易失性存储器,断电后数据会丢失,因此只适合临时存储•闪存Flash MemoryEEPROM的改进版,擦除和写入速度更快,广泛用于便携设备和存储卡高速缓存()原理Cache工作原理缓存层次缓存组织高速缓存是位于CPU和主存之现代处理器通常采用多级缓存缓存内部分为多个缓存行间的小容量、高速度的存储器结构,包括L
1、L2和L3缓存Cache Line,每行存储一块它利用程序的局部性原理,存L1缓存最小最快,直接与CPU连续的主存数据当CPU访问储最近被访问的数据和指令,核心连接;L2和L3缓存容量更某个地址时,会将包含该地址减少CPU对主存的访问次数,大但速度较慢,可能在核心之的整个缓存行加载到缓存中,从而提高系统性能间共享利用空间局部性提高后续访问效率缓存一致性在多处理器或多核系统中,当一个处理器修改某个数据时,需要确保其他处理器的缓存中该数据的副本也相应更新这就是缓存一致性问题,通常通过缓存一致性协议来解决映射方式和替换算法Cache直接映射每个主存块只能映射到缓存中的唯一位置优点是实现简单,硬件开销小;缺点是可能导致冲突,降低缓存利用率全相联映射每个主存块可以映射到缓存中的任意位置优点是灵活性高,冲突概率低;缺点是查找复杂,硬件开销大组相联映射缓存分为多组,每个主存块可映射到指定组中的任意行这是前两种方法的折中,在性能和复杂度间取得平衡替换算法当缓存满时,需要选择一个缓存行替换常用算法包括最近最少使用LRU、先进先出FIFO、最不经常使用LFU和随机替换等虚拟存储器概念基本概念地址转换虚拟存储器是操作系统使用磁盘空间扩展物理内存的技术,为程序提供一个连虚拟地址到物理地址的转换是虚拟存储器的核心功能这一转换通过专用硬件续的、远大于实际物理内存的地址空间这使得程序可以使用比实际物理内存MMU内存管理单元完成,并使用页表或段表存储映射关系转换过程对程序更大的地址空间,简化了程序设计并提高了系统资源利用率透明,程序只需使用虚拟地址,无需关心实际的物理地址页面调度性能考虑当程序访问的虚拟页面不在物理内存中时,会触发页面错误操作系统会将所虚拟存储器的性能主要受页面调度频率影响频繁的页面交换会导致抖动现需页面从磁盘加载到内存,必要时替换出其他页面页面替换算法(如LRU、象,严重降低系统性能使用TLB转换后备缓冲器可以加速地址转换过程合FIFO等)决定了哪些页面应当被替换,直接影响系统性能理的内存分配和程序设计可以减少页面错误,提高系统效率页式存储管理页表机制页表存储虚拟页号到物理页帧号的映射关系每个进程有自己的页表,由操作系统维护页表项通常还包含有效位、修改位、访问位等控制信息,用于页面替换和写回策略的实现地址转换过程虚拟地址分为页号和页内偏移两部分转换时,通过页号查找页表获取物理页帧号,再与页内偏移组合形成物理地址这个过程由MMU硬件支持,保证了高效的地址转换多级页表对于大型地址空间,单级页表过大,难以全部驻留在内存多级页表将页表分成多个层次,只有实际需要的页表部分才加载到内存,节省内存空间但多级页表增加了地址转换的复杂度和延迟优化TLB转换后备缓冲器TLB是一种特殊的高速缓存,用于存储最近使用的页表项地址转换时首先查询TLB,如命中则直接获得物理页帧号,显著提高转换速度TLB命中率对系统性能影响很大段式和段页式存储管理段式存储管理段页式存储管理段式存储管理将程序的地址空间划分为多个段,每段是一个逻辑段页式存储管理结合了段式和页式的优点它首先按照程序的逻独立的单位,如代码段、数据段、堆栈段等每个段在物理内存辑将地址空间划分为段,然后再将每个段划分为大小相等的页中占据连续空间,但不同段之间可以不连续这样既保持了程序的逻辑结构,又避免了外部碎片问题段式管理的优点是符合程序的逻辑结构,便于共享和保护;缺点段页式地址由段号、页号和页内偏移组成地址转换需要两级查是容易产生外部碎片,内存利用率较低表首先通过段号查段表获取该段对应的页表基址,然后通过页号查页表获取物理页帧号,最后与页内偏移组合形成物理地址段式地址由段号和段内偏移组成地址转换时,通过段号查找段表获取段基址,再与段内偏移相加得到物理地址段页式管理虽然提供了更灵活的内存管理方式,但也增加了地址转换的复杂度和开销现代操作系统多采用纯页式或修改的段页式管理方式总线系统概述基本概念基本结构总线是计算机系统中连接各个部件的公共通信通包括数据线、地址线和控制线三部分道2层次体系工作方式现代计算机采用多层次总线架构,平衡性能和兼按照特定协议传输数据,涉及同步、仲裁等机制容性总线是计算机内部的高速公路,用于在CPU、内存、I/O设备等部件之间传输数据和控制信号总线的性能直接影响系统的整体性能,包括数据传输速率、总线宽度和工作频率等参数随着计算机技术的发展,总线标准也在不断演进,从早期的ISA总线到现代的PCIe总线,传输速率提高了几个数量级现代计算机系统通常采用层次化的总线结构,包括内部总线、系统总线和外部总线不同层次的总线有不同的性能特点和应用场景,形成了一个完整的总线体系理解总线系统的工作原理,对于掌握计算机系统架构和性能优化至关重要总线的分类和特性总线仲裁机制仲裁的必要性在多设备共享一条总线的环境中,需要仲裁机制确保同一时刻只有一个设备能够获得总线控制权,防止数据冲突和错误总线仲裁是确保系统正常工作的关键机制集中式仲裁由专门的仲裁器控制总线访问权包括链式查询仲裁、计数器定时轮询仲裁和独立请求仲裁等方式集中式仲裁结构简单,但存在单点故障风险分布式仲裁各设备通过预定的协议自行协商总线使用权如自举式仲裁和CSMA/CD协议等分布式仲裁去除了中央仲裁器,提高了系统可靠性,但实现复杂度较高仲裁策略常见策略包括固定优先级(优先满足高优先级设备)、轮询(公平分配)和先来先服务等选择合适的仲裁策略对于平衡系统性能和公平性至关重要总线的通信协议请求阶段主设备向总线仲裁器发出请求信号,请求获取总线控制权仲裁器根据当前总线状态和仲裁算法决定是否授权这一阶段确保总线使用的有序性,防止冲突寻址阶段获得总线控制权后,主设备在地址线上发出目标设备的地址信号,同时在控制线上指明操作类型(读或写)所有设备都会检查地址信号,判断自己是否为目标设备数据传输阶段主设备和从设备通过数据线交换数据对于写操作,主设备将数据放在数据线上;对于读操作,从设备将请求的数据放在数据线上数据传输可能需要一个或多个总线周期完成结束阶段数据传输完成后,主设备释放总线控制权,设备状态恢复空闲此时,其他设备可以请求总线控制权,开始新的总线周期总线协议确保了这一过程的有序进行输入输出系统概述系统的基本功能I/O输入输出I/O系统是计算机与外部世界交互的桥梁,负责数据的输入、输出和存储它包括各种外部设备、I/O接口电路和相关的软件支持I/O系统的基本功能包括数据传输、设备控制和状态监测等,是计算机系统不可或缺的组成部分系统的组成I/O典型的I/O系统包括外部设备(如键盘、显示器、打印机、磁盘等);I/O接口(负责连接CPU和外部设备,处理信号转换和协议转换);I/O总线(提供数据传输通道);I/O控制器(管理设备操作和数据传输);以及驱动程序(提供软件接口和控制功能)系统的性能指标I/O评估I/O系统性能的主要指标包括数据传输率(单位时间内传输的数据量);响应时间(从发出请求到开始响应的时间);可用性(系统能够正常工作的时间比例);以及可靠性(系统无故障运行的能力)不同类型的应用对这些指标有不同的要求系统的发展趋势I/O现代I/O系统正朝着高速化、智能化、标准化和网络化方向发展高速接口如USB
3.
1、Thunderbolt等不断涌现;智能控制器减轻了CPU负担;标准接口简化了设备连接;而网络化使得远程设备访问变得便捷这些发展极大地提高了I/O系统的性能和灵活性接口的功能和类型I/O协议转换转换CPU和外设之间的数据格式和通信协议数据缓冲临时存储传输数据,平衡速度差异状态检测监控设备状态,检测错误和异常地址译码4识别CPU发出的设备地址,选择正确的设备信号电平转换调整电气信号参数,确保兼容性根据数据传输方式,I/O接口可分为串行接口和并行接口串行接口(如USB、SATA、PCIe)一次传输一位数据,传输距离远但速度相对较低;并行接口(如早期的打印机接口)同时传输多位数据,速度快但传输距离受限,且容易受干扰根据功能复杂度,I/O接口可分为简单接口和智能接口简单接口仅提供基本的连接和数据转换功能;智能接口(如显卡的GPU、网卡的处理器)具有独立的处理能力,可以执行复杂的数据处理任务,减轻CPU负担,提高系统整体性能程序查询方式发出请求反复查询设备状态设备就绪后传输数据继续执行后续指令CPU I/O CPUCPUCPU执行I/O指令,通过地址总线和控CPU通过状态寄存器反复检查设备是一旦设备就绪,CPU与设备之间开始I/O操作完成后,CPU退出查询循环,制总线选择目标设备,并指明操作类否就绪,形成忙等待循环数据传输,完成I/O操作继续执行程序的下一条指令型(读或写)程序查询方式是最简单的I/O控制方式,由CPU直接控制整个I/O过程这种方式实现简单,不需要额外的硬件支持,适用于简单系统和高优先级的关键操作但它也有明显的缺点CPU在等待设备就绪期间处于忙等状态,无法执行其他任务,造成资源浪费程序查询方式的效率与I/O设备的速度密切相关对于快速设备(如高速缓存),查询的时间开销相对较小;但对于慢速设备(如磁盘、打印机),查询方式会导致严重的CPU时间浪费因此,现代计算机系统中,程序查询方式主要用于简单设备或特定场景,而对于大多数I/O操作,采用更高效的中断方式或DMA方式中断方式中断请求I/O设备完成操作或需要服务时,向CPU发出中断请求信号中断请求通过专门的中断线或中断控制器传递给CPU,表明设备需要处理器的即时关注中断响应CPU完成当前指令后,检查是否有中断请求如果有且中断允许,CPU会保存当前程序状态(程序计数器、状态寄存器等),然后转去执行中断服务程序中断识别CPU确定中断源,并找到相应的中断服务程序入口地址这可以通过向量中断机制实现,每个中断源对应一个中断向量,指向其服务程序中断服务CPU执行中断服务程序,完成数据传输或其他必要操作服务程序通常会读取设备状态,处理数据,并可能启动新的I/O操作中断返回中断服务完成后,CPU恢复被中断程序的执行环境,并从中断点继续执行这通过恢复之前保存的程序状态实现,确保主程序能够正常继续运行方式DMA的基本原理传输模式DMA DMA直接内存访问DMA是一种无需CPU直接干预,实现外设与内存DMA有多种工作模式,主要包括之间高速数据传输的机制DMA控制器接管了数据传输任务,使•突发传输模式DMA控制器占用系统总线,连续传输一批数CPU能够同时执行其他操作,大幅提高系统效率据,适合大量数据传输DMA传输过程中,CPU仅负责初始化传输参数(如源地址、目标•周期窃取模式DMA控制器在CPU不使用总线时窃取总线地址、传输长度等),然后将控制权交给DMA控制器DMA控制周期传输数据,对CPU干扰小器完成整个数据传输过程,最后通过中断通知CPU传输完成•透明DMA模式DMA传输仅使用CPU访问内存的空闲时间,对CPU完全透明不同模式适用于不同场景,需要根据系统需求和设备特性选择合适的DMA模式外部设备概述磁盘存储器磁盘存储器是计算机系统常用的辅助存储设备,采用磁性材料记录数据硬盘驱动器HDD的核心结构包括磁盘盘片(存储数据的载体)、磁头(读写数据的装置)、主轴电机(驱动盘片旋转)和磁头臂(控制磁头定位)数据按同心圆的磁道组织,每个磁道又分为若干扇区,形成三维寻址空间硬盘的性能指标主要包括存储容量(通常为TB级)、平均访问时间(由寻道时间、旋转延迟和数据传输时间组成)、数据传输率和可靠性(MTBF,平均无故障时间)传统机械硬盘虽然容量大、价格低,但受限于机械结构,访问速度较慢,不适合对性能要求高的应用场景固态硬盘()SSD工作原理内部结构性能优势固态硬盘利用闪存芯片存储数据,SSD主要由控制器、缓存芯片和闪与传统机械硬盘相比,SSD具有显没有任何机械运动部件数据通存芯片组成控制器负责管理数著优势随机访问速度快(无机过电子方式读写,采用NAND闪据读写、错误校正和磨损平衡;械延迟);数据传输率高;功耗存技术,每个存储单元由浮栅晶缓存提供临时存储空间,加速读低;抗震性强;运行安静这些体管组成读写过程通过改变和写操作;闪存芯片则是实际存储特点使SSD成为对性能要求高的应检测电荷存储状态来实现,彻底数据的介质,通常组织为多个通用的理想选择,特别是在笔记本改变了传统存储方式道和多个芯片电脑、工作站和服务器中使用考虑SSD也有其局限性单位容量价格较高;闪存单元有擦写寿命限制;大容量产品仍然昂贵此外,使用SSD需要考虑磨损平衡、TRIM指令支持和固件更新等维护因素,以确保最佳性能和长期可靠性光盘存储器650MB容量CD标准CD-ROM的存储容量
4.7GB容量DVD单层DVD的典型存储容量25GB蓝光容量单层蓝光光盘的存储容量780nm激光波长CDCD使用的红外激光波长光盘存储器使用激光技术读写数据,是一种重要的外部存储设备光盘介质通常由聚碳酸酯基板和反光层组成,数据以凹坑和平台的形式存储读取时,激光照射在光盘表面,根据反射光的强弱变化检测数据;写入时,高功率激光改变光盘材料的物理或化学特性,形成数据记录按照读写特性,光盘可分为只读型ROM、一次写入型R和可重写型RW技术演进上,从CD到DVD再到蓝光光盘,激光波长逐渐缩短,数据密度不断提高虽然在便携存储领域已逐渐被闪存设备取代,但光盘在大容量数据分发、长期归档和高清视频存储等领域仍有重要应用显示设备液晶显示器有机发光二极管显示屏LCD OLEDLED液晶显示器利用液晶分子在电场作用下改变OLED显示器采用有机材料,在电流刺激下LED显示屏使用发光二极管作为显示单元,排列方向,控制光的透过率,从而显示图像自发光每个像素可独立控制亮度和颜色,具有高亮度、高对比度和宽色域等特点微LCD需要背光源提供光线,具有功耗低、无无需背光源OLED具有高对比度、广视角、型LED技术的发展使LED显示屏向高精度、辐射、轻薄等优点,但视角和响应速度有限快速响应等优势,但使用寿命较短,高亮度低功耗方向发展,在大屏幕显示和户外应用下功耗较高中表现优异打印设备喷墨打印机激光打印机打印机3D喷墨打印机通过喷嘴将微小墨滴精确喷射激光打印机利用激光束在感光鼓上形成静3D打印机通过逐层累加材料的方式创建三到纸面上形成图像工作原理包括热发泡电图像,再通过带电碳粉吸附和热压定影维实物常见技术包括熔融沉积成型式(墨水加热膨胀后喷射)和压电式(压技术将图像转印到纸上激光打印机的优FDM、光固化SLA和选择性激光烧结电晶体变形挤压墨水)两种主要类型喷点是打印速度快、分辨率高、文本清晰,SLS等3D打印已广泛应用于原型设计、墨打印机色彩还原能力强,适合照片和图适合大量文档打印;缺点是体积较大、初医疗器械制造、航空航天零部件生产等领像打印,但打印速度较慢,打印头容易堵始成本高,彩色打印质量略逊于喷墨打印域,代表了打印技术的未来发展方向塞机多处理器系统概述基本概念系统结构1由多个处理器协同工作的计算机系统共享内存或分布式内存的互连架构2负载均衡并行处理任务合理分配,优化处理器利用率多任务同时执行,提高系统吞吐量和处理速度多处理器系统是提高计算机性能的重要途径,可以同时执行多个任务或将单个复杂任务分解并行处理根据系统结构,多处理器系统可分为对称多处理器SMP和非对称多处理器ASMP两种主要类型SMP中所有处理器地位平等,共享系统资源;ASMP中主处理器控制从处理器,各自承担不同功能多处理器系统面临的主要挑战包括处理器间通信开销、任务分配与调度、存储一致性维护和并行算法设计等解决这些问题需要硬件和软件的协同设计,包括高效的互连网络、先进的缓存一致性协议和专门的并行编程模型等随着芯片集成度提高,多核处理器已成为多处理器系统的主流实现方式并行处理的基本概念并行性的层次并行处理存在多个层次,包括位级并行、指令级并行、线程级并行和任务级并行不同层次的并行性需要不同的硬件支持和软件技术,共同提高系统的整体处理能力并行程序设计编写高效的并行程序需要特殊的编程模型和技术,如消息传递接口MPI、OpenMP和CUDA等程序员需要考虑任务分解、负载均衡、通信开销和同步机制等多种因素性能评估并行系统的性能通常用加速比和效率来评估加速比是并行执行时间与顺序执行时间的比值;效率是加速比除以处理器数量理想情况下,加速比应与处理器数量成正比并行处理的局限阿姆达尔定律指出,程序中的顺序部分限制了可能获得的最大加速比此外,通信开销、负载不均衡和资源竞争等因素也会降低并行系统的实际性能和架构SIMD MIMD单指令流多数据流多指令流多数据流SIMD MIMDSIMD架构中,多个处理单元同时执行相同的指令,但作用于不同MIMD架构中,多个处理器独立执行不同的指令流,处理不同的的数据这种架构特别适合数据并行性高的应用,如图像处理、数据每个处理器有自己的控制单元,可以完全独立工作,提供矩阵运算等了最大的灵活性SIMD的优点是控制简单、同步容易,硬件实现相对经济典型的MIMD系统可以进一步分为共享内存多处理器如SMP系统和分布SIMD实现包括现代处理器中的向量指令集扩展(如SSE、AVX)式内存多计算机如集群共享内存系统中处理器通过共享变量通和图形处理器GPU信;分布式系统中处理器通过消息传递通信SIMD的局限性在于要求所有处理单元执行完全相同的操作,不适MIMD的优点是灵活性高,可以同时处理多种不同类型的任务;合控制流复杂的任务当处理的数据元素需要不同处理方式时,缺点是控制复杂,需要解决同步、一致性、通信等问题,硬件和SIMD的效率会大幅降低软件实现难度较大现代多核处理器和服务器集群都属于MIMD架构多核处理器基本结构1将多个处理器核心集成在单个芯片上缓存组织2多级缓存架构,私有和共享缓存并存互连架构3高带宽低延迟的片内互连网络功耗管理动态电压频率调整和核心休眠技术任务调度操作系统和硬件协同的负载均衡多核处理器已成为现代计算机系统的主流架构,从桌面电脑到服务器,再到移动设备,都广泛采用多核技术相比单纯提高时钟频率,多核设计提供了更好的性能/功耗比,同时避免了单核处理器面临的热墙和功耗墙问题当代多核处理器面临的主要挑战包括缓存一致性维护、内存带宽瓶颈、任务并行度有限和程序设计复杂性等未来多核处理器的发展趋势包括核心数量继续增加、异构核心设计(大小核架构)、3D堆叠集成以及硬件专用加速器集成等,以适应不同应用场景的需求网络互连结构星形网络中央节点连接所有外围节点,中心节环形网络网格结构点可能成为瓶颈节点形成闭环连接,通信延迟可预测节点按矩阵排列互连,适合大规模系但绕行距离可能较长统,路由算法复杂总线结构超立方体所有节点共享一条通信总线,实现简高维度连接结构,节点数量随维度指单但扩展性受限数增长,连接度高1网络互连结构是多处理器系统和大规模并行计算系统的关键组成部分,直接影响系统的通信性能、可扩展性和容错能力不同的互连拓扑有不同的性能特点和适用场景,选择合适的网络架构需要考虑应用特性、节点规模、成本和能耗等多种因素现代高性能计算系统通常采用混合互连架构,如胖树、Clos网络或Dragonfly拓扑,以平衡通信性能和硬件成本此外,先进的路由算法和流控技术也是提高网络性能的重要手段随着互连技术的发展,光互连和片上网络NoC等新技术正逐步应用于实际系统中高性能计算机系统高性能计算机系统是为解决科学计算、工程模拟、大数据分析等计算密集型任务而设计的专用系统这类系统通常采用大规模并行架构,集成数千甚至数百万个处理核心,提供极高的计算能力世界顶级超级计算机的浮点运算性能已达每秒百亿亿次百ExaFLOPS级别现代高性能计算系统面临的主要挑战包括能源效率(功耗和散热)、可靠性(大规模系统的故障管理)、编程复杂性(并行算法和工具)以及存储和I/O瓶颈等未来高性能计算的发展方向包括异构计算架构、专用加速器、新型存储技术和量子计算等前沿技术的融合,以突破传统架构的性能极限嵌入式系统概述基本概念系统特点嵌入式系统是为特定应用设计的计算机系统,通常嵌入到其他设备或系统中,嵌入式系统的主要特点包括功能专用化(针对特定任务优化);资源约束作为整体功能的一部分与通用计算机不同,嵌入式系统通常功能专
一、资源(处理能力、内存、功耗受限);实时性(对时间响应有严格要求);可靠性受限、可靠性要求高从家用电器到工业控制,从医疗设备到汽车电子,嵌入(需要长期稳定运行);以及集成度高(软硬件紧密结合)这些特点决定了式系统无处不在嵌入式系统设计的独特挑战主要组成应用领域典型的嵌入式系统包括处理器(如ARM、MIPS等)、存储器(ROM/Flash和嵌入式系统应用极其广泛,主要领域包括消费电子(如智能手机、数字电RAM)、外设接口(如GPIO、UART、SPI等)、专用硬件(如DSP、协处理视);工业控制(如PLC、SCADA系统);汽车电子(如发动机控制、ADAS系器)以及软件系统(包括引导程序、操作系统和应用软件)系统结构根据应统);医疗设备(如监护仪、CT设备);以及物联网设备(如智能传感器、网用需求可以有很大差异关)等嵌入式处理器特点低功耗设计嵌入式处理器通常采用低功耗设计,包括动态电压频率调整、功耗管理单元和低漏电工艺等技术许多嵌入式系统依靠电池供电或需要无风扇设计,因此功耗控制尤为重要体积小型化嵌入式处理器追求小型化和高集成度,常采用系统级芯片SoC设计,将CPU、内存控制器、外设接口和专用硬件集成在单个芯片上这种设计减小了系统体积,降低了功耗和成本实时性能许多嵌入式应用需要确定性的时间响应,如工业控制和汽车电子嵌入式处理器通常提供硬件中断、低延迟响应和精确的定时器等功能,支持实时操作系统的运行可靠性与安全性嵌入式系统经常部署在恶劣环境或安全关键应用中,要求高可靠性和安全性处理器可能包含冗余设计、看门狗定时器、安全启动和硬件加密等特性,增强系统的稳定性和抗攻击能力实时操作系统任务管理实时操作系统RTOS提供优先级调度、抢占式多任务和精确的延迟控制,确保关键任务能在严格的时间限制内响应和完成任务状态转换和上下文切换时间短且可预测同步机制RTOS支持多种任务同步和通信机制,如信号量、互斥锁、消息队列和事件标志等这些机制具有确定性行为,避免常见的问题如优先级反转(通过优先级继承或优先级上限协议)内存管理3实时系统通常采用静态内存分配或受控的动态内存管理,避免不确定的内存分配延迟某些RTOS提供内存保护机制,隔离不同任务的地址空间,提高系统稳定性实时特性RTOS可分为硬实时(绝对不能错过截止时间)、软实时(允许偶尔错过截止时间)和混合实时系统不同类型的系统适用于不同的应用场景,如工业控制、医疗设备或多媒体处理等计算机组成发展趋势3nm工艺节点先进制程工艺持续缩小128+核心数量处理器核心数继续增加50%功耗效率每代架构功耗效率提升10x专用加速AI加速器性能提升倍数计算机组成正经历从同构向异构架构的转变,集成多种类型的处理核心和专用加速器,如CPU、GPU、TPU、神经网络处理器等,针对不同计算模式优化性能三维集成技术的发展使芯片堆叠和系统封装更加紧密,突破传统平面集成的限制,提高系统集成度和性能密度新型存储技术如相变存储器PCM、磁阻存储器MRAM和阻变存储器ReRAM正逐步成熟,有望打破存储层次中的内存墙同时,计算范式也在变革,包括近数据处理、存内计算和量子计算等新概念,为解决传统冯·诺依曼架构的瓶颈提供新思路计算机组成正处于一个创新活跃的时期,各种新技术和新理念不断涌现量子计算简介量子比特量子计算的基本单位是量子比特qubit,不同于经典比特的0或1状态,量子比特可以处于0和1的叠加态这种量子叠加性使得量子计算机能够同时处理多种可能性,为并行计算提供了全新的途径量子纠缠量子纠缠是指两个或多个量子比特之间的特殊关联,使得一个量子比特的状态变化会即时影响其他纠缠的量子比特,无论它们相距多远这种特性为量子通信和分布式量子计算提供了基础量子算法量子算法利用量子力学原理解决特定问题,显著优于经典算法代表性算法包括Shor算法(用于因数分解,威胁现有加密系统)和Grover搜索算法(可加速无序数据库搜索)量子退相干量子系统与环境的相互作用会导致量子态的退相干,是实现大规模量子计算的主要障碍量子纠错码和容错量子计算是解决这一问题的关键技术,研究人员正在努力提高量子比特的相干时间课程总结与展望知识体系构建计算机组成原理完整知识框架1实践能力2掌握分析和设计计算机系统的方法创新思维3理解计算机系统发展历程和未来趋势通过本课程的学习,我们已经系统地了解了计算机系统的基本组成、工作原理和设计方法从数据表示和运算开始,到指令系统、处理器设计、存储系统、总线结构和输入输出系统,我们建立了完整的计算机组成知识体系这些知识不仅是计算机科学的基础,也是深入学习计算机体系结构、操作系统和其他高级课程的前提计算机技术正处于快速发展阶段,未来的发展趋势包括异构计算架构进一步普及;新型存储技术和存储层次结构创新;专用计算加速器广泛应用;量子计算和神经形态计算等新范式的探索作为计算机科学的学习者,我们需要持续关注这些前沿领域,不断更新知识结构,提高实践能力,为计算机技术的发展和应用做出贡献。
个人认证
优秀文档
获得点赞 0