版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、15.4.3 微程序控制器原理框图(1)控制存储器(只读存储器 CM) 用来存放全部指令系统的微程序。(2)微指令寄存器用来存放控制存储器CM读出的一条微指令信息(3)地址转移逻辑 完成自动完成修改微程序的任务2 图5.24 微程序控制器组成原理图3十进制加法调整指令的实现5.4.5 5.4.5 微程序举例微程序举例45.4.5 CPU周期和微指令周期的关系 图 5.26 CPU周期与微指令周期的关系55.4.6 机器指令与微指令关系n一条机器指令机器指令对应一个微程序微程序,该微程序是由若干条微指令序列组成的。n指令和程序与内存储器内存储器有关, 微指令与微地址和控制存储器控制存储器有关。6
2、设计微指令结构的目标是: (1)有利于缩短缩短微指令字长度; (2)有利于减小减小控制存储器的容量; (3)有利于提高提高微程序的执行速度; (4)有利于对微指令的修改修改; (5)有利于提高提高微程序设计的灵活性。5.5 微程序设计技术75.5.1 微命令编码微命令编码:对微指令中的操作控制字段采用的表示方法。微指令编码的三种方法: (1)直接表示法 (2)编码表示法 (3)混合表示法8 特点操作控制字段中的每一位代表一个微命令。 优点:简单直观,其输出直接用于控制。 缺点微指令字较长,因而使控制存储器容量较大。(1)直接表示法9编码表示法把一组相斥性的微命令信号组成一个小组(即一个字段),
3、然后通过小组(字段)译码器对每一个微命令信号进行译码译码输出作为操作控制信号。(2)编码表示法10优点字段译码控制法可使微指令字大大缩短。缺点由于增加译码电路,使微程序的执行速度稍稍减慢。译码译码译码微命令. P1 P2 Pn .字段1字段2P字段下一个微地址顺序控制顺序控制图5.30 段直接译码法11混合表示法:把直接表示法与字段编码法混合使用把直接表示法与字段编码法混合使用,综合考虑微指令字长、灵活性、执行微程序速度等方面的要求。在微指令中可附设一个常数字段。在微指令中可附设一个常数字段。该常数可作为操作数送入ALU运算,也可作为计数器初值用来控制微程序循环次数。(3)混合表示法125.5
4、.2 微地址的形成产生后继微地址的两种方法(1)计数器方式(2)多路转移方式13基本特点 : 微指令的顺序控制字段较短; 微地址产生机构简单; 多路并行转移功能较弱; 速度较慢; 灵活性较差。1.计数器方式14多路转移:一条微指令具有多个转移分支的能力称为多路转移。特点 能以较短的顺序控制字段配合, 实现多路并行转移; 灵活性好,速度较快; 转移地址逻辑需要用组合逻辑方法设计。 2多路转移方式15【例3】微地址寄存器有6位(A5A0),当需要修改其内容时,可通过某一位触发器的强置端S将其置“1”。现有三种情况:(1)执行“取指”微指令后,微程序按IR的OP字段(IR3IR0)进行16路分支;(
5、2)执行条件转移指令微程序时,按标志C的状态进行路分支;(3)执行控制台指令微程序时,按IR4,IR5的状态进行4路分支。请按多路转移方法设计微地址转移逻辑。解:按所给设计条件,微程序有三种判别测试,分别为P1,P2,P3。由于修改A5A0的内容具有很大灵活性,现分配如下:16(1)用P1和IR3IR0修改A3A0;(2)用P2和C修改A0;(3)用P3和IR5,IR4修改A5,A4。另外,还要考虑到时间因素T4(假设CPU周期最后一个节拍脉冲),故转移逻辑表达式如下: A5P3IR5T4 A4P3IR4T4 A3P1IR3T4 A2P1IR2T4 A1P1IR1T4 A0P1IR0T4P2C
6、T4由于从触发器强置端修改,故前5个表达式可用“与非”门实现,最后一个用“与或非”门实现。17微指令的格式分成两类: 水平型微指令 垂直型微指令5.5.3 微指令格式18水平行微指令 一次能定义并执行多个并行操作微命令的微指令 1水平型微指令水平型微指令的一般格式:控制字段判别测试字段下地址字段19水平型微指令分为三种:全水平型(不译法)字段译码法水平型直接和译码相混合的水平型20垂直型微指令 微指令中设置微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能。2. 垂直型微指令特点结构类似于机器指令的结构每条微指令功能简单21功能把源寄存器数据送目标寄存器。(1)寄存器寄存器传送型微指
7、令源寄存器编址目标寄存器编址其他00015 1312 87 32 022功能选择ALU的左、右两输入源信息,按ALU字段所指定的运算功能(8种操作)进行处理,并将结果送入暂存器中。左、右输入源编址可指定31种信息源之一。 (2)运算控制型微指令右输入源编址ALU00115 1312 87 32 0左输入源编址23寄存器编址存储器编址读写01015 1312 87 32 1其他0功能将主存中一个单元的信息送入寄存器或者将寄存器的数据送往主存。(3)访问主存微指令24D测试条件00115 1312 43 0功能依测试对象的状态决定是转移到D所指定的微地址单元,还是顺序执行下一条微指令。(4)条件转
8、移微指令25(1)水平型并行操作能力强,效率高,灵活性强 垂直型微指令则较差; (2)水平型微指令执行指令时间短, 垂直型微指令执行时间长;(3)由水平型微指令解释指令的微程序,有微指令 字较长而微程序短的特点。 垂直型微指令则相反;(4)水平型微指令用户难以掌握, 垂直型微指令相对较易掌握。3.水平型微指令与垂直型微指令比较26微程序设计技术 静态微程序设计 动态微程序设计5.5.4 动态微程序设计静态微程序设计对应于一台计算机的机器指令只有一组微程序,微程序设计好之后,不好改变不好改变,这种微程序设计技术称为静态微程序设计。27动态微程序设计当采用 EPROM 作为控制存储器时,可以通过改
9、变微指令和微程序改变微指令和微程序来改变机器的指令系统改变机器的指令系统,这种微程序设计技术称为动态微程序设计。28传统传统CPUCPU1、M6800 CPU地址缓冲寄存器(高)程序计数器(高位)堆栈指示器(高位)变址寄存器(高位)地址缓冲寄存器(低)程序计数器(低位)堆栈指示器(低位)变址寄存器(低位)累加器(A)累加器(B)状态码寄存器ALU(8位)数据缓冲寄存器指令寄存器操作控制器A15-A8A7-A0D7-D0允许使用数据总线 状态控制 复位 非屏蔽中断 停机 中断请求 时钟 1 时钟 2 总线有效 读/写 有效存储地址 29INTEL 8088 CPU4321总线接口ESCSSSDS
10、IPB-BUS 操作控制器总线接口单元BIUAH ALBH BLCH CLDH DLSPBPSIDI状态标志A-BUSALUPSWC-BUS执行单元EU控制总线锁存器地址总线数据总线30IBM 37016个32位通用寄存器4个64位浮点寄存器定点算术部件十进算术部件浮点算术部件内 部 总 线ARIRIRDR操作控制器存储控制部件 程序状态字到主存储器315.7 典型的CPU1982年1月Intel公司推出80286。它采用6引线的四列直插式封装。它具有独立的16条数据线和24条地址线。芯片上集成13.5万个晶体管。3233Intel80386可以处理32位字长的数据它采用CISC结构。最高工作
11、频率为40Mhz它有32位寄存器和电源管理器可以接80387协处理器有3v版本6个16位段缓冲器132I/O引脚32位地址线,24位地址线3435Intel公司于1989年推出了第二代32位微处理器80486。它采用CMOS工艺,芯片上集成了120万晶体管,是386的4倍以上168个引脚,PGA封装。它也是采用CISC结构,80位FPU,32位数据线,32位地址线,32位寄存器。3680486 结构图371993年3月22日,Intel推出Pentium。它有60Hz和66Hz两种主频;32位,CISC结构;64位数据线;32位地址线;8级FPU并行处理器;310万个晶体管。3839并行性并行
12、性:同时性并发性计算机的的并行的三种形式:时间并行空间并行时间并行空间并行5.8 流水CPU5.8.1 并行处理技术40时间并行多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。空间并行指资源重复,以“数量取胜”为原则来大幅度提高计算机的处理速度。时间并行空间并行既采用时间并行性又采用空间并行性。411流水计算机的系统组成多体交叉存储器cache指令部件(指令I+k+1)(指令I+k)(指令I+2)(指令I+1)执行部件(指令I)取指令、指令译码计算机操作数地址取操作数存储器体系流水方式的CPUFIOF指令队列算术逻辑运算流水线图5.37 流水计算
13、机系统组成原理示意图5.8.2 流水CPU的结构42CPU的三大部分组成指令部件指令队列执行部件执行段的速度匹配采用的方法:将执行部件分为定点执行部件定点执行部件和浮点执行部浮点执行部件件两个可并行执行的部分,分别处理定点运算指令和浮点运算指令;在浮点执行部件中,又有浮点加法和浮点乘除部件,它们也可以同时执行不同的指令;浮点运算部件都以流水线方式工作 。432流水CPU的时空图假设指令周期包含四个子过程:取指令(IF) 指令译码(ID) 运算(EX)结果写回(WB) 每个子过程称为过程段(Si) 44出IF图5.38 流水计算机的时空图 (a)一个指令流水线过程段IDEXWBS1S2S3S4入
14、图 5.38(b)表示非流水计算机的时空图。对非流水计算机来说,上一条指令的四个子过程全部执行完毕后才能开始下一条指令。因此,每隔4个机器时钟周期才有一个输出结果。图5.38 流水计算机的时空图 (b)非流水线时空图I1空间SWBEXIDIFI1I1I1I2I2I2I2I1I2时间T1234567845图 5.38(c)表示流水计算机的时空图。对流水计算机来说,上一条指令与下一条指令的四个子过程在时间上可以重叠执行。因此,当流水线满载时,每一个时钟周期就可以输出一个结果。图5.38 流水计算机的时空图 (c)标量流水线时空图I1空间SWBEXIDIFI1I1I1I5I5I5I5I1I2时间T1
15、2345678I2I2I2I2I3I4I3I4I3I4I3I446比较:流水计算机在8个单位时间中执行了5条指令,非流水计算机在8个单位时钟仅执行了2条指令。结论流水技术的应用,使计算机的速度大大提高了。47标量流水计算机计算机只有一条指令流水线超标量流水计算机指计算机具有两条以上的指令流水线例:Pentium微型机为超标量流水计算机48图5.38 流水计算机的时空图 (d)超标量流水线时空图I2空间SWBEXIDIFI1I1I1I10I1I2时间T12345678I2I2I2I9I8I10I7I9I8I1I3I4I5I3I4I6I5I3I4I6I5I3I4I6I7I5I6I8I9I7I8I1
16、0I9I10I7I3I4I5I6I7I8I9I10493流水线分类指令流水线 指令步骤的并行算术流水线指运算操作步骤的并行STAR-100为 4级流水运算器。TI-ASC为8级流水运算器CRAY-1为14级流水运算器。50处理机流水线(宏流水线)是指程序步骤的并行,由一串级联的处理机构成流水线的各个过程段,每台处理机负责某一特定的任务。数据流从第一台处理机输入,经处理后被送往到第二台处理机相联原缓冲存储器中。第二台处理机从该存储器中取出数据进行处理,然后传送给第三台处理机。如此串联下去。51流水过程中出现的三种相关冲突资源相关数据相关控制相关5.8.3 流水线中的主要问题521.资源相关指多条
17、指令流水线后在同一机器时钟周期内争用同一个功能部件所发生的冲突。冲突解决办法 1.其中一指令停顿一拍后再启动。 2.增设一个存储器,将指令和数据分别放在两个 存储器中。53数据相关冲突由于多条指令的重叠处理,当后继指令所需的操作数,刚好是前一指令的运算结果时,便发生数据相关冲突。数据相关:在一个程序中,如果必须等前一条指令执行完毕后才能执行后一条指令,那么这条指令就是数据相关的。2.数据相关54数据相关冲突的解决流水CPU的运算器中特意设置若干运算结果缓冲寄存器,暂时保留运算结果,便于后继指令直接使用,称为定向传送技术定向传送技术55控制相关冲突 控制相关冲突是由转移指令引起的。解决方法:延迟
18、转移法 由编译程序重排指令序列来实现 基本思想:先执行再转移 转移预测法 硬件方法实现 基本思想:依指令过去行为预测将来行为3.控制相关56【例4】 流水线中有三类数据相关冲突:写后读(RAW)相关;读后写(WAR)相关;写后写(WAW)相关。判断以下三组指令各存在哪种类型的数据相关。(1) I1ADDR1,R2, R3; (R2) (R3) R1 I2 SUBR4,R1, R5 ;(R1) (R5) R4(2)I3 STAM ( x ), R3;(R3) M(x), M(x) 是存储 单元I4 ADDR3,R4,R5; (R4) (R5) R3(3)I5MUL R3,R1,R2; (R1)
19、x (R2) R3 I6 ADD R3,R4,R5; (R4) (R5) R357 解:第(1)组指令中,I1指令运算结果应先写入R1,然后在I2指令中读出R1内容。由于I2指令进入流水线,变成I2指令在I1指令写入R1前就读出R1内容,发生RAW相关。 第(2)组指令中,I3 指令应先读出 R3内容并存入存储单元M(x),然后在 I4指令中将运算结果写入R3 。但由于I4进入流水线,变成I4指令在I2指令读出R3内容前就写入R3, 发生W AR相关。 第(3)组指令中,如果 I6 指令的加法运算完成时间早于 I5 指令的乘法运算时间,变成指令I6 在指令 写入I5前就写入R34 ,导致R3的
20、内容错误,发生WAW相关。581Pentium的技术性能Pentium是Intel公司生产的超标量流水处理器;早期使用5V工作电压,后期使用3.3V工作电压;CPU的主频是片外主总线时钟频率的倍频;CPU它是一个32位微处理器;通向存储器的外部数据总线宽度为64位;CPU外部地址总线宽度是36位,但一般使用32位宽;物理地址空间为4096MB(4GB);虚拟地址空间为64TB,分页模式除支持4KB页面外还支持2MB和4MB页面;5.8.4 奔腾CPU59CPU内部分别设置指令 cache 和数据cache,外部还可接L2cache;CPU采用U,V两条指令流水线,能在一时钟周期内发射两条简单的
21、整数指令,也可发射一条浮点指令;操作控制器采用硬布线控制和微程序控制相结合的方式;Pentium具有非固定长度的指令格式,9种寻址方式,191条指令。60BTB转移目标缓冲TLB64位数据总线页面部件预取缓冲(2套)指令译码控制部件总 线 部 件控制 ROM地 址 产 生 U流水线地 址产 生V流水线整数寄存器堆ALU U流水线ALU V流水线桶形移位器浮点部件控制寄存器堆加法除法乘法TLB数据cache8KB32位地址总线323232323232转移验证和目标地址指令cache8KB256指令指针预取地址64位数据总线32位地址总线控制808061 新型体系结构特点1.超标量流水线2.指令C
22、ache和数据Cache3.浮点单元4.专一预测62(1)超标量流水线超标量流水线是 Pentium 系统结构的核心;由U U和和V V两条指令流水线两条指令流水线构成;每条流水线都有自己的ALUALU、地址生成电路地址生成电路、与数据数据CacheCache的接口;两个指令预取缓冲器,每个都是32字节,负责由指令Cache或主存取指令并放入其中。63 指令译码器1.完成译码指令2.指令配对检查 发射一对指令必须满足如下条件:1.两条指令是简单指令;2.两条指令不发生数据相关;3.每条指令不同时含有立即数和偏移量;4.只有I1允许带有指令前缀。64(2)指令Cache和数据Cache奔腾CPU
23、分设指令Cache和数据Cache,各为8K。指令Cache只读,以单端口256位向指令预取缓冲器提供超常指令字代码。数据Cache是可读写的,双端口,每个端口32位,两个Cache与64位数据,32位地址的CPU内部总线相连。两个Cache都是2路组相联结构,每个32字节。两个Cache都使用物理地址。65(3)浮点运算部件 Pentium CPU的8段流水浮点运算器 前4段为1. 指令预取(PF)2. 指令译码(D1)3. 地址生成(D2)4. 取操作数(EX) 在U,V流水线中完成。66后4段为1.执行1(X1)2.执行2(X2)3.结果写回寄存器堆(WF)4.错误报告(ER)在浮点运算
24、部件中完成。(4)动态转移预测技术Pentium采用动态转移预测技术使得执行转移指令时流水线不断流。675.9.1 RISC机器的特点RISC的三个基本要素: (1)一个有限的简单的指令集; (2)CPU配备大量的通用寄存器; (3)强调对指令流水线的优化。5.9 RISC CPU68 RISC机器的特征:1. 使用等长指令。2. 寻址方式少且简单。3. 只有取数指令、存数指令访问存储器。4. 指令集中的指令数目少,指令格式。5. 指令功能简单,控制多采用硬布线方式。6. 平均而言,所有指令的执行时间为一个处理时钟周期。697. 指令格式中,用于指派整数寄存器的个数不少于32个,用于指派浮点寄
25、存器的个数不少于16个。 8. 强调通用寄存器资源的优化使用。9. 支持指令流水并强调指令流水的优化使用。10.RISC技术的复杂性在它的编译程序。70表表5.6 CISC与与RICS的主要特征对比的主要特征对比比较内容CISCRISC指令系统复杂,庞大简单,精简指令数目一般大于200一般小于100指令格式一般大于4一般小于4寻址方式一般大于4一般小于4指令字长不固定等长可访问指令不加限制只有LOAD/STORE各种指令使用频率相差很大相差不大各种指令使用时间相差很大基本上在一个周期完成优化编码实现很难较容易程序源代码长度较短较长控制器实现方式基本为微程序控制基本上是硬布线控制软件系统开发时间
26、较短较长71 188110CPU88110CPU结构框图结构框图5.9.2 RISC CPU实例72三个Cache:指令Cache 数据Cache 目标指令Cache两个寄存器堆:通用寄存器堆 扩展寄存器堆12个执行功能部件LOAD/STORE读写部件 超标量指令派遣/转移部件整数运部件(2个) 浮点加法部件 乘法部件除法部件 图形处理部件(2个) 位处理部件7328811088110的指令流水线的指令流水线74753指令动态调度策略指令动态调度策略88110的动态调度策略按序发射按序完成记分牌用以判断能否发射指令76【例5】超标度为2的超标量流水线结构模型如图5.42(a)所示。它分为4个段
27、,即取指(F)段、译码(D)段、执行(E)段和写回(W)段。F,D,W段只需1个时钟周期完成。E段有多个功能部件,期中LOAD/要STORE部件完成数据cache访问,只需1个时钟周期;加法器完成需2个时钟周期,乘法器需3个时钟周期,它们都已流水化。F段和D段要求成对的输入。E段有内部数据定向传送,结果生成即可使用。77现有如下6条指令序列,期中I1,I2有RAW相关,I3,I4有WAR相关,I5,I6有WAW相关和RAW相关。I1LADR1,A ;M(A)R1,M(A)是存储器单元I2ADDR2,R1;(R2)(R1)R2I3ADDR3,R4;(R3)(R4)R3I4MULR4,R5;(R4
28、)(R5)R4I5LADR6,B ; M(B)R6,M(B)是存储器单元I6MULR6,R7;(R6)(R7)R678请画出:(1)按序发射按序完成各段推进情况图;(2)按序发射按序完成的流水线时空图。解:(1)按序发射按序完成各段情况推进图如图5.42(b)所示。由于I1,I2间有RAW相关,I2要推迟一个时钟才能发射。类似的情况也存在于I5,I6之间。79I3,I4之间有WAR相关,但按序发射,即使I3,I4并行操作,也不会导致错误。I5,I6间还有WAW相关,只要I6的完成放在I5之后,就不会出错。注意,I5实际上已在时钟6执行完毕,但一直推迟到时钟9才写回,这是为了保持按序完成。超标量
29、流水线完成6条指令的执行任务总共需要10个时钟周期。 (2)根据各段推进情况图可画出流水线时空图,如图5.42(c)所示。80 图5.42 超标量流水线各段推进情况图和时空图取指段译码段执行段写回段12D1D2发射取存部件12加加乘乘2乘3(a) 超标量流水模型结构I1I2I2I3I4I5I6I1I2I2 I3I4I5 I3I4I5I4 I6I5 I6 I6译码段执行段I1I2I3I4I5I6写回段2345678910时钟(b) 各段推进情况815.10.1 多媒体技术的主要问题5.10 多媒体 CPU多媒体技术 指计算机把各种不同的电子媒质集成起来,统一进行存储存储,处理处理和传输传输。同时在这些部件之间建立逻辑连接,从而使整个系统具有交互性交互性。82 多媒体技术解决的主要问题:1. 图像与声音的压缩技术2. 适应多媒体技术的软件技术3. 计算机系统结构方面的技术83 一种多媒体扩展结构技术,极大提高了计算机在多媒体和通信应用方式的功能。 Pentium CPU集成技术体现在:1. 采用种新的数据类型;2. 使用个64位宽的寄存器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 村级财务预算方案
- 村内巷道整治方案
- 住房拆迁施工合同范例
- 2022年土建质量员考试题库(含答案)
- 2020-2021学年江西省萍乡市芦溪外国语学校高一英语下学期
- 电子商务在我国保险业的应用与发展前景以中国平安保险公司
- ATP的主要来源-细胞呼吸-3
- 异地订餐食品配送方案
- 化学新课程标准学习试题
- 2024年个人信贷服务合同
- 支教教师考核登记表
- 中国融通资源开发集团有限公司社会招聘笔试
- DL∕T 1919-2018 发电企业应急能力建设评估规范
- 自学考试数据结构重点总结各章讲义精讲
- 六年级语文上册部编版第六单元教材分析及所有教案
- 《中国糖尿病地图》要点解读
- 医疗设备定价政策
- GB/T 44151-2024增材制造用镁及镁合金粉
- 2024年纪念会计法实施周年会计知识百题竞赛
- 国开2024年《中国法律史》平时作业1-3答案
- 2024石油天然气工业钛合金感应加热弯管
评论
0/150
提交评论