第2讲计算机体系结构讲解
RISC思想诞生的过程,IBM801获得图灵奖 1 根据20%--80% 定理, 2 指令功能和硬件密切相关,指令功能丰富,硬件结构就越复杂,硬件的成本、价格就越高,指令系统设计的折中 考虑,互相配合才能提高性能价格比; 3 VLS I 的迅猛发展,在一块芯片上集成更多的器件,CPU内部能够做大量的寄存器,使用较快的寄存器—寄存器指令,使指令系统更加精简、控制部件更加简化、运行速度更快、系统效率更高。 * ① 简化指令系统设计,适合超大规模电路实现。 指令减少,控制电路简单,占用芯片的面积减少,可以 让出更多的面积增设寄存器、Cache、主存、I / O 端口, 增强芯片的规整性,降低成本,有利于实现单片CPU。 ② 提高机器的执行速度和效率。 指令系统的精简可以加快指令的译码; 控制器简化可缩短指令执行的延时、等待; 访问存储器次数的减少,提高了执行的速度。 ③ 降低设计成本,提高了系统的可靠性。 采用相对精简的控制器,缩短了设计周期,减少了最终 产品在设计完成前被作废的可能性,减少了设计的错误, 都产生了降低设计成本,提高了系统的可靠性。 ④ 直接支持高级语言的能力,简化编译程序的设计。 指令长度相等,都在一个机器周期完成,使编译程序易 于调整指令顺序,以提高程序的运行速度; 指令的条数减少,缩小了编译过程中对功能相似的机器 指令进行选择,减少了对各种寻址方式进行选择、分析和 变换的操作; 采用了寄存器之间的操作,直接支持了高级语言处理; 编译代码的优化,简化了编译程序,缩短了编译程序的 长度。 * 可以从执行指令的总条数、指令的总周期数、指令执行的 时间进行比较。 是指每条指令执行的平均周期数, RISC 结构的设计 就是要使 CPI 进一步减小,使 CPI ≤ 1 * (6)如Intel在pentium处理器中加入了MMX * 1.4 计算机系统结构的发展 模拟和仿真 使软件能在具有不同系统结构的机器之间相互移植。 在一种系统结构上实现另一种系统结构。 从指令集的角度来看,就是要在一种机器上实现 另一种机器的指令集。 模拟:用软件的方法在一台现有的机器(称为宿主机)上实现另一台机器(称为虚拟机)的指令集。 通常用解释的方法来实现。 运行速度较慢,性能较差。 1.4 计算机系统结构的发展 仿真:用一台现有机器(宿主机)上的微程序 去解释实现另一台机器(目标机)的指令集。 运行速度比模拟方法的快 仿真只能在系统结构差距不大的机器之间使用 统一高级语言 实现软件移植的一种理想的方法 较难实现 并行性:计算机系统在同一时刻或者同一时间间隔内 进行多种运算或操作。 只要在时间上相互重叠,就存在并行性。 同时性:两个或两个以上的事件在同一时刻发生。 并发性:两个或两个以上的事件在同一时间间隔 内发生。 1.5 计算机系统结构中并行性的发展 并行性的概念 1.5 计算机系统结构中并行性的发展 从处理数据的角度来看,并行性等级从低到高可分为: 字串位串:每次只对一个字的一位进行处理。 最基本的串行处理方式,不存在并行性。 字串位并:同时对一个字的全部位进行处理,不 同字之间是串行的。 开始出现并行性。 字并位串:同时对许多字的同一位(称为位片) 进行处理。 具有较高的并行性。 全并行:同时对许多字的全部位或部分位进行处理。 最高一级的并行。 1.5 计算机系统结构中并行性的发展 从执行程序的角度来看,并行性等级从低到高可分为: 指令内部并行:单条指令中各微操作之间的并行。 指令级并行:并行执行两条或两条以上的指令。 线程级并行:并行执行两个或两个以上的线程。 通常是以一个进程内派生的多个线程为调度单位。 任务级或过程级并行:并行执行两个或两个以上 的过程或任务(程序段) 以子程序或进程为调度单元。 作业或程序级并行:并行执行两个或两个以上的 作业或程序。 1.5 计算机系统结构中并行性的发展 三种途径: 时间重叠 引入时间因素,让多个处理过程在时间上相 互错开,轮流重叠地使用同一套硬件设备的各个 部分,以加快硬件