




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章计算机系统的结构组成与工作原理2.1计算机系统的基本结构与组成层次模型
Hierarchy结构Architecture、组成Organization与实现Realization2.2计算机系统的工作原理冯·诺依曼计算机架构模型机:系统结构、指令集、工作流程2.3计算机体系结构的改革改进:指令集(RISC/CISC)、分层存储器、高速总线/接口改变:多种并行技术:流水线、超标量、多机/核、多线程2.4计算机体系结构分类2.5计算机性能评测
字长、存储容量、运算速度2.6习题2023/12/51/50Flynn计算机执行C语言程序实现1+2求和功能生成可执行程序过程分析问题并得到解决方法编写源代码(sum.c,保存在硬盘上)编译、链接得到可执行程序(sum.exe,保存在硬盘上)可执行文件(sum.exe)格式解析数据段(程序中定义的变量)代码段(程序中的可执行语句)计算机执行程序过程可执行程序从硬盘加载到内存(加载方式:操作系统或硬件加载):变量加载到数据段,可执行语句加载到代码段,并把程序计数器(PC)初始化为代码段的首地址CPU根据当前PC值从内存读取一条指令到CPU内部,并更新PC=PC+N(N为一条指令的长度)分析该指令功能执行该指令功能,然后跳转到步骤b),直到程序最后一条指令(a)软硬件实现(b)语言功能计算机系统的3种层次结构2.1.1节(1)图自下而上反映了系统逐级生成的过程,自上而下反映了系统求解问题的过程;(2)图中的虚拟机:与某种特殊编程语言对应的假想硬件机器。微体系结构层(微程序)操作系统层语言处理层(解释、编译)用户程序层(语言编程)系统分析层(数学模型、算法)硬核级数字逻辑层(硬件)指令系统层(机器语言指令)应用语言虚拟机高级语言虚拟机汇编语言虚拟机操作系统虚拟机机器语言级微程序级寄存器级(硬件)硬件系统:异常处理机构、指令系统、CPU、存储器、I/O及通信子系统系统软件:操作系统、编译器、数据库管理系统、Web浏览器、设备驱动、中断服务程序应用软件计算机系统层次结构(P31、P39)现代计算机是软件、硬件和网络组件的复杂综合体,其基本功能包括信息的存储、处理和交换计算机功能通过软件实现还是硬件实现,取决于所需的速度、灵活性、成本、可靠性、更新频率等因素软件实现:灵活,硬件简单,成本低,但是速度慢硬件实现:速度快,灵活性差,硬件复杂,成本高软硬件的逻辑等价性可以表现为:硬件软化(如RISC思想)、软件硬化(如CISC思想)、固件化(如微程序)技术(同三种IP核对照理解);计算机划分层次的好处(P31)计算机体系结构:是程序员所看到的计算机(机器语言级)的属性,即概念性结构与功能特性计算机组成:从硬件角度关注物理机器的各部件的功能以及各部件的联系。对程序员是透明的。计算机实现:指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度;系列机2023/12/55/36计算机体系结构、组成与实现1.计算机体系结构是人眼看不见的东西,而计算机组成是人眼可见的2.计算机组成是计算机的外部,是使用人员所关心的系统硬件指标参数;而计算机实现是计算机的内部,是制造人员关心的内容3.相同体系结构(同系列)的计算机具有相同的结构和不同的组成。计算机体系结构
1946年,美国宾夕法尼亚大学莫尔学院的物理学博士Mauchley和电气工程师Eckert领导的小组研制成功世界上第一台数字式电子计算机ENIAC
。著名的美籍匈牙利数学家冯·诺依曼参加了为改进ENIAC而举行的一系列专家会议,研究了新型计算机的体系结构。
1949年,英国剑桥大学的威尔克斯等人在EDSAC
机上实现了冯·诺依曼模式。直至今天冯·诺依曼体系结构依然是绝大多数数字计算机的基础。2023/12/56/50注意:同一体系结构的计算机,不管其组成和实现如何变化,在代码级是完全兼容的。(例如更换相同平台下的CPU型号不需要修改源代码)2023/12/57/267/30计算机组成【例1】①确定是否有乘法指令属于。
②乘法指令是用专门的乘法器实现,还是经加法器用重复的相加和右移操作来实现,属于。
③乘法器、加法器的物理实现,如器件的选定(器件集成度、类型、数量、价格)及所用微组装技术等,属于计算机体系结构计算机组成计算机实现计算机体系结构、组成及实现区分【例2】①主存容量与编址方式(按位、按字节、按字访问等)的确定属于
。
②为达到所定性能价格比,主存速度应多快,在逻辑结构上需采用什么措施(如多体交叉存储等)属于
。
③主存系统的物理实现,如存储器器件的选定、逻辑电路的设计、微组装技术的选定属于
。计算机体系结构计算机组成计算机实现功能部件五大部分
运算器、控制器、存储器、输入设备、输出设备以存储器为中心信息表示:二进制
计算机内部的控制信息和数据信息均采用二进制表示,并存放在同一类存储器中,采用相同的访问电路。工作原理:存储程序/指令(控制)驱动编译链接生成的可执行程序(包括指令和数据)保存在辅助存储器中;程序开始运行时,计算机在不需要人工干预的情况下由控制器自动、高速地依次从存储器中取出指令并加以执行。2023/12/59/81冯·诺依曼体系结构P32在在冯·诺依曼体系结构中,内存属于存储器,硬盘属于输入/输出设备C语言程序涉及的计算机部件输入设备(scanf)输出设备(printf)运算器(c=a+b)存储器(存放a,b,c的值和执行代码)控制器(协调和控制前述四个部件的工作)ENIAC和EDSAC的异同ENIACEDSAC计数进制十进制二进制程序存储接插线进行,程序不存储存储程序,指令驱动程序执行手工执行程序控制的自动执行体系结构无冯·诺依曼体系结构,是所有现代计算机的原型和范本特点第一台数字式电子计算机第一台存储程序计算机早期的计算机结构(无总线)早期计算机各组成部分之间通过芯片引脚直接连接模型机体系结构基于总线的冯·诺依曼架构模型机总线子系统:作为公共通道连接各子部件,用于实现各部件之间的数据、信息等的传输和交换CPU子系统:集成了运算器、控制器和寄存器的超大规模集成电路芯片存储器子系统:用来存放当前的运行程序和数据输入输出子系统:用于完成计算机与外部的信息交换2023/12/513/50ARM寄存器:R0,R1,……,R15x86寄存器:AX(AH,AL),BX(BH,BL),CX(CH,CL),DX(DH,DL)模型机总线结构按传输信息的不同,可将总线分为三类:
地址总线(AB)、控制总线(CB)和数据总线(DB)地址总线通常是单向的,由主设备(如CPU)发出,用于选择读写对象(如某个特定的存储单元或外部设备);数据总线用于数据交换,通常是双向的;控制总线包括真正的控制信号线(如读/写信号)和一些状态信号线(如是否已将数据送上总线),用于实现对设备的监视和控制。CPU存储器I/O接口输入/输出设备ABDBCB……总线表示方式3-8译码器74LS1383-8译码器218HAY0BY1CY2G1Y3Y4G2AY5Y6G2BY7CBA输出有效引脚000Y0001Y1010Y2011Y3100Y4101Y5110Y6111Y7N个输入端的译码器可以输出2N个引脚存储器用来存放当前的运行程序和数据存储器组织由许多字节单元组成,每个单元都有一个唯一的编号(存储单元地址),其中保存的信息称为存储单元内容访问(读或写)存储单元:存储单元地址经地址译码后产生相应的选通信号,同时在控制信号的作用下读出存储单元内容到数据缓冲器,或将数据缓冲器中的内容写入选定的单元DBABCB模型机内存储器控制器微操作控制电路指令译码器ID指令寄存器IR
操作码,地址码脉冲分配器时钟脉冲源控制总线CB地址总线AB数据总线DB内部总线地址缓冲器数据缓冲器通用寄存器组堆栈指针SP程序计数器PC寄存器组模型机CPU子系统运算器算术逻辑单元ALU结果寄存器输入1输入2标志寄存器CPU读写存储器步骤存储器的读写是相对于CPU来说的,CPU从存储器取数据为读,CPU把数据放入存储器为写CPU读存储器步骤
CPU把需要读数据的存储单元地址放到地址锁存器(地址总线)存储器对地址译码后产生相应的存储单元选通信号CPU发出存储器读控制信号,存储器在读信号的作用下读出存储单元内容到数据缓冲器CPU在规定的存储器读时间内从数据缓冲器(数据总线)上取数据CPU写存储器步骤
CPU把需要写数据的存储单元地址放到地址锁存器(地址总线)存储器对地址译码后产生相应的存储单元选通信号CPU数据放到数据缓冲器(数据总线)CPU发出存储器写控制信号,存储器在写信号的作用下将数据缓冲器中的内容写入选定的单元模型机指令系统
指令是发送到CPU的命令,指示CPU执行一个特定的处理。CPU可以处理的全部指令集合称为指令集。指令集结构(ISA)是体系结构的主要内容之一。ISA功能设计实际就是确定软硬件的功能分配。
指令通常包含操作码和操作数两部分。操作码指明要完成操作的性质,如加、减、乘、除、数据传送、移位等;操作数指明参加上述规定操作的数据或数据所存放的地址。汇编语言源程序机器语言程序(目标代码)汇编(汇编程序)高级语言源程序编译或解释(编译程序)
例: MOV
R0,#2二进制操作码助记符:与动作一一对应目/源操作数:操作码:由CPU设计人员定义,具有固定的写法和意义。操作数:可由编程人员采用不同方式给出。;注释指令举例ADDR0,R1,R2
;R0R1+R2
模型机工作原理计算机的工作本质上就是执行程序的过程。指令执行的基本过程可以分为取指令(fetch)、分析指令(decode)和执行指令(execute)三个阶段。①取指令当程序已在存储器中时,首先根据程序入口地址取出一条程序,为此要发出指令地址及控制信号②分析指令即指令译码,是指对当前取得的指令进行分析,指出它要求什么操作,并产生相应的操作控制命令。③执行指令根据分析指令时产生的“操作命令”形成相应的操作控制信号序列,通过运算器、存储器及输入/输出设备的执行,实现每条指令的功能,其中包括对运算结果的处理以及下条指令地址的形成。PC值由操作系统初始化为程序的入口地址(c语言中是main函数第一行)计算机完成计算的过程分析目的:计算0x5C和0x2E之和编写汇编程序代码,关键代码如下:
MOVACC,5CH;ACC=5CH,
ACC为CPU内部的寄存器ADDACC,ACC,2EH;ACC=ACC+2EH编译、链接后得到的可执行代码(二进制位串)运行(把保存在硬盘上的可执行文件调入内存,并把程序指令在内存的开始位置赋值给CPU中的PC寄存器)以后的计算工作就交给CPU(指令驱动)B0H5CH04H2EH程序的执行过程取指令、分析指令、执行指令CBABDBALU累加器ACC暂存器标志寄存器FR寄存器组
操作控制器OC指令译码器ID指令寄存器IR
操作码,地址码内部总线地址缓冲器数据缓冲器程序计数器PC地址译码读控制B0H5CH04H2EH地址1001H1002H1003H内容1000H内存储器+NCPU外CPU内①②③④⑤⑥①②③④⑤⑥①③④⑤⑥②①②③④⑤⑥⑦⑧汇编链接后的可执行文件调入内存储器,PC赋值1000HMOVACC,5CHADDACC,ACC,2EH汇编源代码N表示指令长度(以字节为单位),此处N=1改进指令集(指令功能、指令格式、寻址方式)存储器子系统(4层结构)及并行的哈佛结构高速总线成为计算机系统的核心输入/输出体系结构改变1.改变串行执行模式,发展并行技术;2.改变控制驱动方式,发展数据驱动、需求驱动、模式驱动等其它驱动方式;2023/12/524/81早期计算机的缺点指令功能越来越复杂,硬件设计太复杂,成本太高存储器读取速度远远低于CPU的处理速度低速和高速输入、输出设备之间的矛盾单一的输入输出体系结构严重影响CPU的效率串行性是冯诺依曼计算机的本质特点(指令执行和存储器读取的串行性)2.3微处理器体系结构的改进和改变(P38)不同的指令集设计策略:CISC与RISCCISC(ComplexInstructionSetComputer,复杂指令集计算机)---软件硬化思想不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。计算机的指令逐渐增多,逐渐复杂。伯克利提出的2-8原则,将常用的20%称为热代码。反之为冷代码。RISC(ReducedInstructionSetComputer,精简指令集计算机)---硬件软化思想通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。*25/862023/12/525/50参考《浪潮之巅》第五章第三节指令集之争CISC系统的缺点美国加州大学Berkeley分校的研究结果表明:许多复杂指令很少被使用,“2-8原则”控制器硬件复杂(指令多,且具有不定长格式和复杂的数据类型),占用了大量芯片面积,且容易出错;指令操作繁杂,速度慢;指令规整性不好,不利用采用流水线技术提高性能。*2023/12/527/50RISC的特点及设计思想
RISC机的设计应当遵循以下五个原则:①指令条数少,格式简单,易于译码,不提供复杂指令;②提供足够的寄存器,只允许load
和store指令访问内存;③指令由硬件直接执行,
在单个周期内完成;④充分利用流水线;⑤依赖优化编译器的作用;;
*27/68由于CISC指令计日趋复杂,无法适应优化编译,同时存储器的成本不断降低,为RISC系统提供了基础条件。CISC:优点:指令越多功能越强,强调代码效率,容易和高级语言接轨。可直接实现处理器和存储器之间的数据转移。缺点:指令集以及芯片的设计比上一代产品更复杂,不同的指令,需要不同的时钟周期来完成,执行较慢的指令,将影响整台机器的执行效率。RISC:优点:指令少容易记忆,尽量将操作码和操作数用1个16位数或32位数表示,指令整齐。CPU时钟频率可以做得很高,指令执行速度快。缺点:同样功能的程序,产生的代码量比较大,必须合理地选择编译器。CISC与RISC系统的比较CISC:如IntelCPU,RISC如ARM处理器分层的存储子系统(改进2)
P40-P41,P156如何以合理的价格搭建出容量和速度都满足要求的存储系统,始终是计算机体系结构设计中的关键问题之一。现代计算机系统通常把不同的存储设备按一定的体系结构组织起来,以解决存储容量、存取速度和价格之间的矛盾。2023/12/529/50并行访问的哈佛体系结构改善存储器带宽(例如:ARM9系列)DSP程序数据I/O接口外设程序地址数据读地址数据写地址程序读总线数据读总线程序/数据写数据程序2023/12/530/50CPU存储器总线非哈佛体系结构哈佛体系结构2023/12/531/50现代高速总线(改进3)P41早期总线是CPU引脚的延伸,缺点:总线结构与处理器紧密相连,通用性差CPU是总线唯一的主设备标准总线特点:总线结构与力求与处理器无关支持多主设备由总线仲裁器协调主设备对总线的请求有串行化趋势输入输出管理方式2023/12/532/50从上至下看,输入/输出方式的改进逐渐把CPU从输入/输出的管理工作中解放出来,提高了系统响应时间2.3.2计算机体系结构的演进:并行处理技术并行处理技术实现多个处理器或处理器模块的并行性,其基本思想包括时间重叠、资源重复和资源共享并行性是指计算机在同一时刻或同一时间间隔内进行多种运算或操作,它包括同时性和并发性。指令级并行技术ISP
流水线、超标量、超长指令字系统级并行技术SLP
多处理器(多机/多核)、多磁盘线程级并行技术TLP
同时多线程SMT电路级并行技术CLP
组相联cache、先行进位加法器四级流水线CPU的操作(1)取指令级
将待执行指令的地址发送到指令存储器,并等待此指令返回。(2)指令译码级
指令译码并从寄存器中取出所需的源操作数。(3)指令执行级
执行运算,并将其结果送至下一阶段(4)数据回写级
将数据写回到寄存器或者数据存储器,或在决定分支跳转时写入地址寄存器给出下一个指令的地址。指令时空图(一个周期执行一个步骤)串行顺序执行4级流水线执行流水线满载串行顺序执行:大部分硬件都处于空闲状态指令流水线:所有硬件都处于工作状态计算机流水线技术
从硬件上看,通过分割逻辑,插入缓冲寄存器(流水线Reg)来构建流水线2023/12/536/50超标量CPU的体系结构超标量技术:可在一个时钟周期内对多条指令进行并行处理,使CPI小于1;特点:处理器中有两个或两个以上的相同的功能部件;
要求操作数之间必须没有相关性;整数指令浮点指令*2023/12/537/50超标量结构机器的例子两条输入流水线三条执行流水线每个时钟周期可从存储器中获取两条指令用于执行不需要访问存储器的指令可处理所有需要或不需要访问存储器的指令可用于进行乘、除类较复杂的算术运算决定应使用哪一条执行流水线2023/12/538/502023/12/539/50多机并行系统大规模并行处理机(MPP)是一种价格昂贵的超级计算机,它由许多CPU通过高速专用互联网络连接。机群(cluster)由多台同构或异构的独立计算机通过高性能网络或局域网连在一起协同完成特定的并行计算任务。刀片(blade)通常指包含一个或多个CPU、内存以及网络接口的服务器主板。通常一个刀片柜共享其它外部I/O和电源,而辅助存储器则有距离刀片柜较近的存储服务器提供。网格(Network)是一组由高速网络连接的不同的计算机系统,可以相互合作也可独立工作。网格计算机将接受中央服务器分配的任务,然后在不忙的时候(如晚上或周末)执行这些任务。多线程技术单片多处理器(ChipMulitProcessor,CMP)
问题:晶体管数量、芯片面积及芯片发热量多线程处理器(MultithreadedProcessor)细粒度多线程(Fine-GrailMultithreading)在每个指令中切换线程,处理器必须能在每个时钟周期切换线程。其优点是可以隐藏停顿引起的吞吐量损失;缺点是单个线程处理速度变慢了。粗粒度多线程(Coarse-GrailMultithreading)
仅当遇到开销大的阻塞时才切换线程其缺陷在于流水线启动开销引起吞吐量损失,特别是对于短的阻塞2023/12/540/50
1966年M.J.Flynn按照指令流和数据流的不同组织方式,把计算机系统的结构分为以下4类:单指令流单数据流
–SISD早期的计算机都是SISD机器,如冯诺.依曼架构、IBMPC机、早期的巨型机(2)单指令流多数据流
–SIMD
用于数字信号处理、图像处理、以及多媒体信息处理(3)多指令流单数据流
–
MISD只是作为理论模型出现,没有投入到实际应用之中(4)多指令流多数据流
–
MIMD最新的多核计算平台就属于MIMD的范畴,例如Intel和AMD的双核处理器等都属于MIMD2.4计算机体系结构的分类(P52)CUPUISCSDSSISD计算机MMSISD计算机典型是单处理器系统,特点:每次对一条指令进行译码,并仅对一个操作部件分配数据。CU:控制单元,PU:处理单元,MM:存储体CS:控制流,IS:指令流,DS:数据流PU1PU2PUNCUSMDS1DS2DSNISCSSIMD计算机MM1MM2MMN特点:多个PU按一定方式互连,在同一个CU控制下,各自的数据完成同一条指令规定的操作;从CU看,指令顺序(串行)执行,从PU看,数据并行执行。MISD计算机CU1CU
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- D打印技术在个性化教育资源的开发考核试卷
- 期刊出版论文的开源出版趋势考核试卷
- 教育音像制品策划与制作考核试卷
- 文具行业个性化服务考核试卷
- 工业园区电动汽车充电需求分析考核试卷
- 健康生活方式与营养健康考核试卷
- 个人培训课件大全
- 买杭州新房合同范本
- 私人店铺租赁合同范本
- 2025届吉林省吉林地区高三上学期二模英语试题及答案
- 建设项目委托代建合同范文(4篇)
- GB/T 15934-2008电器附件电线组件和互连电线组件
- GA/T 765-2020人血红蛋白检测金标试剂条法
- 第2章-西周-春秋战国时期的音乐-1-3节课件
- 提高白云石配比对烧结生产的影响
- 公安基础知识考试题库(含各题型)
- 选矿试车方案
- 小课题专题研究参考题目
- 《最好的未来》合唱曲谱
- GB∕T 8081-2018 天然生胶 技术分级橡胶(TSR)规格导则
- 教学课件个人理财-2
评论
0/150
提交评论