微处理器系统结构与嵌入式系统设计:第2章 计算机系统的结构组成与工作原理_第1页
微处理器系统结构与嵌入式系统设计:第2章 计算机系统的结构组成与工作原理_第2页
微处理器系统结构与嵌入式系统设计:第2章 计算机系统的结构组成与工作原理_第3页
微处理器系统结构与嵌入式系统设计:第2章 计算机系统的结构组成与工作原理_第4页
微处理器系统结构与嵌入式系统设计:第2章 计算机系统的结构组成与工作原理_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、7/16/20221/ 32第二章 计算机系统的结构组成与工作原理2.1 计算机系统的基本结构与组成结构Architecture、组成Organization与实现Realization2.2 计算机系统的工作原理冯诺依曼计算机架构模型机:系统结构、指令集、工作流程计算机系统层次结构2.3 微处理器体系结构的改革改进:指令集(RISC/CISC)、分层存储器 、高速总线/接口改变:流水线、超标量、超长指令字、多机/核、多线程2.4 计算机体系结构分类2.5 计算机性能评测Performance 字长、存储容量、运算速度并行技术Flynn7/16/20222/ 32第二章 习题作业:26、14、

2、15思考:1、7132022/7/162/327/16/20223/ 32体系结构、组成与实现体系结构Architecture 程序员关心的计算机概念结构与功能特性如:确定指令集中是否有乘法指令;计算机组成Organization从硬件角度关注物理机器的组织 如:乘法指令由专用乘法器还是用加法器实现计算机实现Realization底层的器件技术、微组装技术、冷却技术等如:加法器底层的物理器件类型及微组装技术系列机计算机的组成(1)7/16/20225/ 32计算机的组成(2)总线结构7/16/20226/ 32计算机的组成(3)同步数字系统7设计原理图7/16/20228/ 32计算机的实现

3、半导体技术 制造技术 封装技术 装配技术 电源技术 冷却技术 沙子到CPU过程-提取纯净硅10切割硅锭11光绘50nm工艺:晶体管栅极的宽度12蚀刻13离子注入14敷铜15金属连接分层16切割、测试17封装18设计原理图19PCB布板7/16/202220/ 32制板、焊接7/16/202221/ 32计算机的体系结构 1946年,美国宾夕法尼亚大学莫尔学院的物理学博士Mauchley和电气工程师Eckert领导的小组研制成功世界上第一台数字式电子计算机ENIAC 。 著名的美籍匈牙利数学家Von Neumann参加了为改进ENIAC而举行的一系列专家会议,研究了新型计算机的体系结构。 194

4、9年,英国剑桥大学的威尔克斯等人在EDSAC 机上实现了冯诺依曼模式。 直至今天冯诺依曼体系结构依然是绝大多数数字计算机的基础。22冯诺依曼体系结构硬件组成五大部分运算器、存储器、控制器、输入设备、输出设备以存储器为中心信息表示:二进制 计算机内部的控制信息和数据信息均采用二进制表示,并存放在同一个存储器中。工作原理:存储程序/指令(控制)驱动 编制好的程序(包括指令和数据)预先经由输入设备输入并保存在存储器中; 计算机开始工作后,在不需要人工干预的情况下由控制器控制高速地从存储器中取出指令依次执行。7/16/202223/ 32模型机体系结构基于总线的冯诺依曼架构模型机存储器子系统:用来存放

5、当前的运行程序和数据总线子系统:作为公共通道连接各子部件,用于实现各部件之间的数据、信息等的传输和交换输入输出子系统:用于完成计算机与外部的信息交换CPU子系统:集成了运算器、控制器和寄存器的超大规模集成电路芯片(VLSI)7/16/202224/ 32模型机总线结构按传输信息的不同,可将总线分为数据总线DB、地址总线AB和控制总线CB三类:地址总线通常是单向的,由主设备(如CPU)发出,用于选择读写对象(如某个特定的存储单元或外部设备);数据总线用于数据交换,通常是双向的;控制总线包括真正的控制信号线(如读/写信号)和一些状态信号线(如是否已将数据送上总线),用于实现对设备的监视和控制。MP

6、URAMROMI/O接口外设ABDBCB25模型机内存储器存储器组织由许多字节单元组成,每个单元都有一个唯一的编号(存储单元地址),保存的信息称为存储单元内容。访问(读或写)存储单元 :存储单元地址经地址译码后产生相应的选通信号,同时在控制信号的作用下读出存储单元内容到数据缓冲器,或将数据缓冲器中的内容写入选定的单元。7/16/202226/ 32算术逻辑单元ALU累加器ACC累加锁存器暂存器标志寄存器FR通用寄存器组堆栈指针SP程序计数器PC微 操 作 控 制 电 路指令译码器ID指令寄存器IR 操作码 , 地址码脉冲分配器时钟脉冲源控制总线CB地址总线AB数据总线DB内部总线地址缓冲器数据

7、缓冲器运算器寄存器组控制器模型机CPU子系统27模型机指令系统指令是发送到CPU的命令,指示CPU执行一个特定的处理,如从存储器取数据、对数据进行逻辑运算等。CPU可以处理的全部指令集合称为指令集(Instruction Set)。指令集结构(ISA,Instruction Set Architecture) 是体系结构的主要内容之一,对CPU的基本组织会产生非常大的影响。ISA功能设计实际就是确定软硬件的功能分配。指令通常包含操作码和操作数两部分。操作码指明要完成操作的性质,如加、减、乘、除、数据传送、移位等;操作数指明参加上述规定操作的数据或数据所存放的地址。汇编语言源程序机器语言程序(目

8、标代码)汇编(汇编程序)高级语言源程序编译或解释(编译程序)28模型机常用汇编指令指 令 类 型操作码示例操作数示例说 明算术类加法ADDRs1, Rs2, RdRs, Imm, Rd(Rs1)+(Rs2)Rd(Rs)+ImmRd运算类指令只能对寄存器中的数据或立即数进行直接操作减法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,

9、Rd!(Rs)Rd传送类存储器或I/O读LDRMEM, RdMEM (Rd)将指定地址的存储单元或I/O端口的值读入寄存器Rd存储器或I/O写STRRs, MEM(Rs)MEM将寄存器Rs的值写入指定地址的存储单元或I/O端口寄存器访问MOVRs, RdImm, Rd(Rs)(Rd)跳转类无条件跳转JMPLableLable(PC)条件跳转JX/JNXLableIf X为真/假,则Lable (PC)过程调用CALLSub-LableSub-Lable(PC)调用子程序过程返回RET-返回主程序其他停机HLT-7/16/202229/ 32模型机工作原理 计算机的工作本质上就是执行程序的过程。

10、一、顺序执行指令执行的基本过程可以分为取指令(fetch)、分析指令(decode)和执行指令(execute)三个阶段。非顺序执行转移(jump):执行条件/无条件转移指令,不返回过程(procedure)调用:主程序调用子程序后返回断点中断(interrupt)、异常( exception)、陷阱(trap) :执行过程中发生了意外事件。2022/7/1629/817/16/202230/ 32程序的执行过程取指令、分析指令、执行指令ABDBALU累加器ACC暂存器标志寄存器FR寄存器组 操作控制器OC指令译码器ID指令寄存器IR 操作码, 地址码内部总线地址缓冲器数据缓冲器程序计数器PC

11、地址译码读控制B0H5CH04H2EH地址1001H1002H1003H内容1000H内存储器MOV 5CH, R1ADD R1, 2EH, R21CPU外CPU内(a)软硬件层次 (b)语言层次计算机系统的层次结构(a)图自下而上反映了系统逐级生成的过程,自上而下反映了系统求解问题的过程;软硬件的逻辑等价性可以表现为:硬件软化(如RISC思想)、软件硬化(如CISC思想)、固件化(如微程序) ;(b)图中的虚拟机:与某种特殊编程语言对应的假想硬件机器微体系结构层(微程序或硬连逻辑)操作系统层语言处理层(解释、编译)用户程序层(语言编程)系统分析层(数学模型、算法)硬核级数字逻辑层(硬件)指令

12、系统层(机器语言指令)应用语言虚拟机高级语言虚拟机汇编语言虚拟机操作系统虚拟机机器语言级微程序级寄存器级(硬件)硬件系统:异常处理机构、指令系统、CPU、存储器、I/O及通信子系统系统软件:操作系统、编译器、数据库管理系统、Web浏览器、设备驱动、中断服务程序应用软件32对冯诺依曼体系结构的改进一、改进CPU指令集 存储器子系统 输入/输出子系统 改变改变串行执行模式,发展并行技术;改变控制方式,发展数据、需求、模式等其它驱动方式; 3-6章重点指令功能、指令格式、寻址方式 分层结构高速总线+多种接口方式 冯诺依曼型计算机的本质特点也造成了其瓶颈: 指令执行的串行性 存储器读取的串行性7/16

13、/2022/ 32原始的设计思路:CISCCISC(Complex Instruction Set Computer,复杂指令集计算机)不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。7/16/202234/ 32CISC的特点及设计思想一、控制器硬件复杂(指令多,且具有不定长格式和复杂的数据类型),占用了大量芯片面积,且容易出错;二、指令操作繁杂,速度慢;三、指令规整性不好,不利于采用流水线技术提高性能。四、相同逻辑时使用的指令总数少*34/687/16/2022/ 32研究结果指导的设计思路:RISC美国加州大学Berkeley分校的研究结果表明

14、: 许多复杂指令很少被使用,“2-8原则”RISC(Reduced Instruction Set Computer,精简指令集计算机)通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。7/16/202236/ 32RISC的特点及设计思想 RISC机的设计应当遵循以下五个原则: 指令条数少,格式简单,易于译码; 提供足够的寄存器,只允许load 和store指令访问内存; 指令由硬件直接执行, 在单个周期内完成; 充分利用流水线; 依赖优化编译器的作用; *36/687/16/202237/ 32不同的指令集设计策略:CISC与RISCCISC(Complex In

15、struction Set Computer,复杂指令集计算机)不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。RISC(Reduced Instruction Set Computer,精简指令集计算机)通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。*37/86现代计算机:RISC+CISC7/16/202238/ 32CISC与RISC的数据流IRIDREGALUMEM开始退出IRIDALUMEMREG微操作通道开始退出单通数据通道RISC:Load/Store结构CISC:寻址方式复杂*38/867/16/2022

16、39/ 32分层的存储子系统如何以合理的价格搭建出容量和速度都满足要求的存储系统,始终是计算机体系结构设计中的关键问题之一。现代计算机系统通常把不同的存储设备按一定的体系结构组织起来,以解决存储容量、存取速度和价格之间的矛盾。设计目标:整个存储系统速度接近M1而价格和容量接近Mn7/16/202240/ 32其他改善存储器带宽的方法并行存储器双端口存储器哈佛体系结构DSP程序数据I/O接口外设程序地址数据读地址数据写地址程序读总线数据读总线程序/数据写数据程序7/16/202241/ 32现代高速总线高速并行总线高速总线串行化多级总线结构北桥南桥前端总线Front Side Bus7/16/2

17、02243/ 32输入输出管理方式44计算机体系结构的演进:并行处理技术指令级并行技术ISP流水线、超标量、超长指令字系统级并行技术SLP多处理器(多机/多核)、多磁盘线程级并行技术TLP同时多线程SMT电路级并行技术CLP组相联cache、先行进位加法器 并行处理技术实现多个处理器或处理器模块的并行性,其基本思想包括时间重叠(time interleaving)、资源重复(resource replicaiton)和资源共享(resource sharing)。7/16/202245/ 32流水线技术 可通过分割逻辑,插入缓冲寄存器(流水线Reg)来构建7/16/202246/ 32指令时空

18、图顺序执行4级流水线执行流水线满载47流水线满载独立硬件模块7/16/202248/ 32更细的流水线取指(FI)指令译码(DI)计算操作数地址(CO)取操作数(FO)执行指令(EI)写操作数(WO)48/867/16/202249/ 32流水线CPU的特点优点: 通过指令级并行来提高性能。缺点:增加了硬件成本。流水寄存器会引入延迟和时钟偏移,这些额外开销会使每条指令的执行时间有所增加,同时限制了流水线的深度。 流水线中各段的操作存在关联(dependence)时可能会引起流水线中断,从而影响流水线的性能和效率。*49/867/16/2022/ 32流水线数据冲突7/16/2022/ 32流水

19、线数据冲突-定向技术7/16/2022/ 32流水线数据冲突-调度技术7/16/202253/ 32流水线数据冲突及乱序执行注意这里其实需要两个独立执行部件7/16/2022/ 32流水线结构冲突7/16/2022/ 327/16/2022/ 32多端口寄存器堆7/16/2022/ 327/16/2022/ 32哈弗结构存储器7/16/202259/ 32流水线结构冲突及超标量流水线?有5个执行单元的超标量流水线有2套硬件的超标量流水线CPU 共用一个取指单元的5段双流水线*7/16/2022/ 32流水线控制冲突跳转指令7/16/202261/ 32流水线冲突理想流水线的性能:每个时钟周期完

20、成一条指令实际流水机器中可能存在冒险(hazard)导致停顿: 数据冒险(如后面的计算要用到前面的结果)定向技术可将结果数据从其产生的地方直接传送到所有需要它的功能部件编译器可利用流水线调度(scheduling)技术来重新组织指令顺序结构冒险(硬件资源不够)增加额外的同类型资源改变资源的设计使其能被同时使用控制冒险(分支等跳转指令引起 )可采用分支预测及预测执行技术最大限度地使处理器各部分保持运行状态。多端口的寄存器堆哈佛结构存储器、超标量*61/867/16/202262/ 32超标量CPU的体系结构超标量技术:可在一个时钟周期内对多条指令进行并行处理,使CPI小于1;特点:处理器中有两个

21、或两个以上的相同的功能部件; 要求操作数之间必须没有相关性;整数指令浮点指令*63超标量处理机一般概念性结构instruction fetching多个流水线读取及转移预测逻辑instruction decoding并行译码器,预译码技术instruction dispatching动态规划instruction execution多个流水线功能单元instruction completion暂存结果数据instruction retiring真正更新Reg和Mem中的结果数据*7/16/202264/ 32 超标量结构机器的例子 两条输入流水线三条执行流水线每个时钟周期可从存储器中获取两条指

22、令用于执行不需要访问存储器的指令可处理所有需要或不需要访问存储器的指令可用于进行乘、除类较复杂的算术运算决定应使用哪一条执行流水线7/16/202265/ 32VLIW处理机 和超标量处理机不同,超长指令字VLIW(Very Long Instruction Word)依靠编译器在编译时找出指令之间潜在的并行性,并通过指令调度把可能出现的数据冲突减少到最小,最后把能并行执行的多条指令组装成一条很长的指令,然后由处理机中多个相互独立的执行部件分别执行长指令中的一个操作,即相当于同时执行多条指令。 VLIW处理机能否成功,很大程度上取决于代码压缩的效率,其编译程序和体系结构的关系非常密切,缺乏对传

23、统软件和硬件的兼容,因而不大适用一般应用领域。 *7/16/202266/ 32多机并行系统大规模并行处理机(MPP)是一种价格昂贵的超级计算机,它由许多CPU通过高速专用互联网络连接。机群(cluster)由多台同构或异构的独立计算机通过高性能网络或局域网连在一起协同完成特定的并行计算任务。刀片(blade)通常指包含一个或多个CPU、内存以及网络接口的服务器主板。通常一个刀片柜共享其它外部I/O和电源,而辅助存储器则有距离刀片柜较近的存储服务器提供。网格(Network)是一组由高速网络连接的不同的计算机系统,可以相互合作也可独立工作。网格计算机将接受中央服务器分配的任务,然后在不忙的时候(如晚上或周末)执行这些任务。7/16/202267/ 32多核处理器7/16

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论