微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt

上传人:本田雅阁 文档编号:3056784 上传时间:2019-07-01 格式:PPT 页数:73 大小:12.18MB
返回 下载 相关 举报
微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt_第1页
第1页 / 共73页
微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt_第2页
第2页 / 共73页
微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt_第3页
第3页 / 共73页
微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt_第4页
第4页 / 共73页
微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt》由会员分享,可在线阅读,更多相关《微处理器系统结构与嵌入式系统设计(肖寅东)第二章.ppt(73页珍藏版)》请在三一文库上搜索。

1、,自动化工程学院 测试技术及仪器研究所 肖 寅 东 E-mail: TELE: 028-61831303,微处理器系统结构与嵌入式系统设计,7/1/2019,2,/ 32,第二章 计算机系统的结构组成与工作原理,2.1 计算机系统的基本结构与组成 结构Architecture、组成Organization与实现Realization 2.2 计算机系统的工作原理 冯诺依曼计算机架构 模型机:系统结构、指令集、工作流程 计算机系统层次结构 2.3 微处理器体系结构的改革 改进:指令集(RISC/CISC)、分层存储器 、高速总线/接口 改变:流水线、超标量、超长指令字、多机/核、多线程 2.4

2、 计算机体系结构分类 2.5 计算机性能评测Performance 字长、存储容量、运算速度,并行技术,Flynn,7/1/2019,3,/ 32,第二章 习题,作业:26、14、15 思考:1、713,2019/7/1,3/32,7/1/2019,4,/ 32,体系结构、组成与实现,体系结构Architecture 程序员关心的计算机概念结构与功能特性 如:确定指令集中是否有乘法指令; 计算机组成Organization 从硬件角度关注物理机器的组织 如:乘法指令由专用乘法器还是用加法器实现 计算机实现Realization 底层的器件技术、微组装技术、冷却技术等 如:加法器底层的物理器件类

3、型及微组装技术,系列机,计算机的组成(1),7/1/2019,6,/ 32,计算机的组成(2),总线结构,7/1/2019,7,/ 32,计算机的组成(3),同步数字系统,8,设计原理图,7/1/2019,9,/ 32,计算机的实现,半导体技术 制造技术 封装技术 装配技术 电源技术 冷却技术 ,沙子到CPU过程-提取纯净硅,11,切割硅锭,12,光绘,50nm工艺:晶体管栅极的宽度,13,蚀刻,14,离子注入,15,敷铜,16,金属连接分层,17,切割、测试,18,封装,19,设计原理图,20,PCB布板,7/1/2019,21,/ 32,制板、焊接,7/1/2019,22,/ 32,计算机

4、的体系结构,1946年,美国宾夕法尼亚大学莫尔学院的物理学博士Mauchley和电气工程师Eckert领导的小组研制成功世界上第一台数字式电子计算机ENIAC 。 著名的美籍匈牙利数学家Von Neumann参加了为改进ENIAC而举行的一系列专家会议,研究了新型计算机的体系结构。 1949年,英国剑桥大学的威尔克斯等人在EDSAC 机上实现了冯诺依曼模式。 直至今天冯诺依曼体系结构依然是绝大多数数字计算机的基础。,23,冯诺依曼体系结构,硬件组成 五大部分 运算器、存储器、控制器、输入设备、输出设备 以存储器为中心 信息表示:二进制 计算机内部的控制信息和数据信息均采用二进制表示,并存放在同

5、一个存储器中。 工作原理:存储程序/指令(控制)驱动 编制好的程序(包括指令和数据)预先经由输入设备输入并保存在存储器中; 计算机开始工作后,在不需要人工干预的情况下由控制器控制高速地从存储器中取出指令依次执行。,7/1/2019,24,/ 32,模型机体系结构,基于总线的冯诺依曼架构模型机 存储器子系统:用来存放当前的运行程序和数据 总线子系统:作为公共通道连接各子部件,用于实现各 部件之间的数据、信息等的传输和交换 输入输出子系统:用于完成计算机与外部的信息交换 CPU子系统:集成了运算器、控制器和寄存器的超大规模集成电路芯片(VLSI),7/1/2019,25,/ 32,模型机总线结构,

6、按传输信息的不同,可将总线分为数据总线DB、地址总线AB和控制总线CB三类: 地址总线通常是单向的,由主设备(如CPU)发出,用于选择读写对象(如某个特定的存储单元或外部设备); 数据总线用于数据交换,通常是双向的; 控制总线包括真正的控制信号线(如读/写信号)和一些状态信号线(如是否已将数据送上总线),用于实现对设备的监视和控制。,MPU,RAM,ROM,I/O接口,外设,AB,DB,CB,26,模型机内存储器,存储器组织由许多字节单元组成,每个单元都有一个唯一的编号(存储单元地址),保存的信息称为存储单元内容。 访问(读或写)存储单元 :存储单元地址经地址译码后产生相应的选通信号,同时在控

7、制信号的作用下读出存储单元内容到数据缓冲器,或将数据缓冲器中的内容写入选定的单元。,7/1/2019,27,/ 32,通用寄存器组 堆栈指针SP 程序计数器PC,微 操 作 控 制 电 路,控制总线CB,地址总线AB,数据总线DB,运算器,寄存器组,控制器,模型机CPU子系统,28,模型机指令系统,指令是发送到CPU的命令,指示CPU执行一个特定的处理,如从存储器取数据、对数据进行逻辑运算等。CPU可以处理的全部指令集合称为指令集(Instruction Set)。指令集结构(ISA,Instruction Set Architecture) 是体系结构的主要内容之一,对CPU的基本组织会产生

8、非常大的影响。ISA功能设计实际就是确定软硬件的功能分配。 指令通常包含操作码和操作数两部分。操作码指明要完成操作的性质,如加、减、乘、除、数据传送、移位等;操作数指明参加上述规定操作的数据或数据所存放的地址。,29,模型机常用汇编指令,7/1/2019,30,/ 32,模型机工作原理,计算机的工作本质上就是执行程序的过程。 一、顺序执行 指令执行的基本过程可以分为取指令(fetch)、分析指令(decode)和执行指令(execute)三个阶段。 非顺序执行 转移(jump):执行条件/无条件转移指令,不返回 过程(procedure)调用:主程序调用子程序后返回断点 中断(interrup

9、t)、异常( exception)、陷阱(trap) :执行过程中发生了意外事件。,2019/7/1,30/81,7/1/2019,31,/ 32,程序的执行过程,取指令、分析指令、执行指令,AB,DB,地址译码,读控制,MOV 5CH, R1 ADD R1, 2EH, R2,1,计算机系统的层次结构,(a)图自下而上反映了系统逐级生成的过程,自上而下反映了系统求解问题的过程; 软硬件的逻辑等价性可以表现为:硬件软化(如RISC思想)、软件硬化(如CISC思想)、固件化(如微程序) ; (b)图中的虚拟机:与某种特殊编程语言对应的假想硬件机器,微体系结构层 (微程序或硬连逻辑),操作系统层,语

10、言处理层(解释、编译),用户程序层(语言编程),系统分析层(数学模型、算法),硬核级,数字逻辑层(硬件),指令系统层(机器语言指令),应用语言虚拟机,高级语言虚拟机,汇编语言虚拟机,操作系统虚拟机,机器语言级,微程序级,寄存器级(硬件),硬件系统:异常处理机构、指令系统、CPU、存储器、I/O及通信子系统,系统软件:操作系统、编译器、数据库管理系统、Web浏览器、设备驱动、中断服务程序,应用软件,33,对冯诺依曼体系结构的改进,一、改进 CPU指令集 存储器子系统 输入/输出子系统 改变 改变串行执行模式,发展并行技术; 改变控制方式,发展数据、需求、模式等其它驱动方式;,3-6章重点,指令功

11、能、指令格式、寻址方式,分层结构,高速总线+多种接口方式,冯诺依曼型计算机的本质特点也造成了其瓶颈: 指令执行的串行性 存储器读取的串行性,7/1/2019,/ 32,原始的设计思路:CISC,CISC(Complex Instruction Set Computer,复杂指令集计算机) 不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。,7/1/2019,35,/ 32,CISC的特点及设计思想,一、控制器硬件复杂(指令多,且具有不定长格式和复杂的数据类型),占用了大量芯片面积,且容易出错; 二、指令操作繁杂,速度慢; 三、指令规整性不好,不利于采用

12、流水线技术提高性能。 四、相同逻辑时使用的指令总数少,*,35/68,7/1/2019,/ 32,研究结果指导的设计思路:RISC,美国加州大学Berkeley分校的研究结果表明: 许多复杂指令很少被使用,“2-8原则” RISC(Reduced Instruction Set Computer,精简指令集计算机) 通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。,7/1/2019,37,/ 32,RISC的特点及设计思想,RISC机的设计应当遵循以下五个原则: 指令条数少,格式简单,易于译码; 提供足够的寄存器,只允许load 和store指令访问内存; 指令由硬

13、件直接执行, 在单个周期内完成; 充分利用流水线; 依赖优化编译器的作用;,*,37/68,7/1/2019,38,/ 32,不同的指令集设计策略:CISC与RISC,CISC(Complex Instruction Set Computer,复杂指令集计算机) 不断增强指令的功能以及设置更复杂的新指令取代原先由程序段完成的功能,从而实现软件功能的硬化。 RISC(Reduced Instruction Set Computer,精简指令集计算机) 通过减少指令种类和简化指令功能来降低硬件设计复杂度,从而提高指令的执行速度。,*,38/86,现代计算机:RISC+CISC,7/1/2019,3

14、9,/ 32,CISC与RISC的数据流,IR,ID,REG,ALU,MEM,开始,退出,IR,ID,ALU,MEM,REG,微操作通道,开始,退出,单通数据通道,RISC:Load/Store结构,CISC:寻址方式复杂,*,39/86,7/1/2019,40,/ 32,分层的存储子系统,如何以合理的价格搭建出容量和速度都满足要求的存储系统,始终是计算机体系结构设计中的关键问题之一。 现代计算机系统通常把不同的存储设备按一定的体系结构组织起来,以解决存储容量、存取速度和价格之间的矛盾。,设计目标:整个存储系统速度接近M1而价格和容量接近Mn,7/1/2019,41,/ 32,其他改善存储器带

15、宽的方法,并行存储器,双端口存储器,哈佛体系结构,7/1/2019,42,/ 32,现代高速总线,高速并行总线,高速总线串行化,多级总线结构,北桥,南桥,前端总线Front Side Bus,7/1/2019,44,/ 32,输入输出管理方式,45,计算机体系结构的演进:并行处理技术,指令级并行技术ISP 流水线、超标量、超长指令字 系统级并行技术SLP 多处理器(多机/多核)、多磁盘 线程级并行技术TLP 同时多线程SMT 电路级并行技术CLP 组相联cache、先行进位加法器,并行处理技术实现多个处理器或处理器模块的并行性,其基本思想包括时间重叠(time interleaving)、资源

16、重复(resource replicaiton)和资源共享(resource sharing)。,7/1/2019,46,/ 32,流水线技术,可通过分割逻辑,插入缓冲寄存器(流水线Reg)来构建,7/1/2019,47,/ 32,指令时空图,顺序执行,4级流水线执行,流水线满载,48,流水线满载,独立硬件模块,7/1/2019,49,/ 32,更细的流水线,取指(FI) 指令译码(DI) 计算操作数地址(CO) 取操作数(FO) 执行指令(EI) 写操作数(WO),49/86,7/1/2019,50,/ 32,流水线CPU的特点,优点: 通过指令级并行来提高性能。 缺点: 增加了硬件成本。

17、流水寄存器会引入延迟和时钟偏移,这些额外开销会使每条指令的执行时间有所增加,同时限制了流水线的深度。 流水线中各段的操作存在关联(dependence)时可能会引起流水线中断,从而影响流水线的性能和效率。,*,50/86,7/1/2019,/ 32,流水线数据冲突,7/1/2019,/ 32,流水线数据冲突-定向技术,7/1/2019,/ 32,流水线数据冲突-调度技术,7/1/2019,54,/ 32,流水线数据冲突及乱序执行,注意这里其实需要两个独立执行部件,7/1/2019,/ 32,流水线结构冲突,7/1/2019,/ 32,7/1/2019,/ 32,多端口寄存器堆,7/1/2019

18、,/ 32,7/1/2019,/ 32,哈弗结构存储器,7/1/2019,60,/ 32,流水线结构冲突及超标量流水线,?,有5个执行单元的超标量流水线,有2套硬件的超标量流水线CPU,共用一个取指单元的5段双流水线,*,7/1/2019,/ 32,流水线控制冲突,跳转指令,7/1/2019,62,/ 32,流水线冲突,理想流水线的性能:每个时钟周期完成一条指令 实际流水机器中可能存在冒险(hazard)导致停顿: 数据冒险(如后面的计算要用到前面的结果) 定向技术可将结果数据从其产生的地方直接传送到所有需要它的功能部件 编译器可利用流水线调度(scheduling)技术来重新组织指令顺序 结

19、构冒险(硬件资源不够) 增加额外的同类型资源 改变资源的设计使其能被同时使用 控制冒险(分支等跳转指令引起 ) 可采用分支预测及预测执行技术最大限度地使处理器各部分保持运行状态。,多端口的寄存器堆,哈佛结构存储器、超标量,*,62/86,7/1/2019,63,/ 32,超标量CPU的体系结构,超标量技术:可在一个时钟周期内对多条指令进行并行处理,使CPI小于1; 特点:处理器中有两个或两个以上的相同的功能部件; 要求操作数之间必须没有相关性;,整数指令,浮点指令,*,64,超标量处理机一般概念性结构,instruction fetching 多个流水线读取及转移预测逻辑 instructio

20、n decoding 并行译码器,预译码技术 instruction dispatching 动态规划 instruction execution 多个流水线功能单元 instruction completion 暂存结果数据 instruction retiring 真正更新Reg和Mem中的结果数据,*,7/1/2019,65,/ 32,超标量结构机器的例子,两条输入流水线,三条执行流水线,每个时钟周期可从存储器中获取两条指令,用于执行不需要访问存储器的指令,可处理所有需要或不需要访问存储器的指令,可用于进行乘、除类较复杂的算术运算,决定应使用哪一条执行流水线,7/1/2019,66,/

21、32,VLIW处理机,和超标量处理机不同,超长指令字VLIW(Very Long Instruction Word)依靠编译器在编译时找出指令之间潜在的并行性,并通过指令调度把可能出现的数据冲突减少到最小,最后把能并行执行的多条指令组装成一条很长的指令,然后由处理机中多个相互独立的执行部件分别执行长指令中的一个操作,即相当于同时执行多条指令。 VLIW处理机能否成功,很大程度上取决于代码压缩的效率,其编译程序和体系结构的 关系非常密切,缺乏对传 统软件和硬件的兼容,因 而不大适用一般应用领域。,*,7/1/2019,67,/ 32,多机并行系统,大规模并行处理机(MPP)是一种价格昂贵的超级计

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

23、术,P处理器 M存储器 C缓存 rni网络接口 S交换开关 Dsp核 re可重构逻辑 L专用逻辑,7/1/2019,70,/ 32,多线程技术,单片多处理器(Chip MulitProcessor,CMP)问题:晶体管数量、芯片面积及芯片发热量 多线程处理器(Multithreaded Processor),71,计算机体系结构的分类,Flynn分类:根据指令流和数据流的多少进行分类 单指令单数据SISD 单指令多数据SIMD 多指令单数据MISD 多指令多数据MIMD,CU控制部件 PU处理部件 MM存储单元 CS为控制流 DS为数据流 IS为指令流,传统的顺序处理机、标量流水线处理机、超标

24、量流水线处理机,阵列处理机、向量处理机,无实际机型对应,多处理机系统,72,计算机系统的性能测定,计算机系统的性能由硬件性能和程序特性决定,通常可利用标准测试程序来测定性能。 用MIPS (Million Instructions Per Second,每秒百万条指令)或MFLOPS(每秒百万次浮点操作)的数值来衡量计算机系统的硬件速度。 用 CPU执行时间T来量化硬软件结合系统的有效速度。 MIPS = f(MHz)/CPI T(s) = (IC CPI)/f(Hz) f(时钟频率): CPU的基本工作频率 IC(指令数目):运行程序的指令总数 CPI(Cycles Per Instruction):指令执行的平均周期数,可从运行大量测试程序或实际程序产生的统计数据中计算出来,CPI数越小 CPU速度越快,7/1/2019,73,/ 32,计算机系统性能量度值计算,假设一台计算机的时钟频率是100 MHz(每秒百万周期),具有4种类型的指令,它们的使用率和CPI分别如下表所示。求该计算机的MIPS值以及运行一个具有107条指令的程序所需的CPU时间。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1