《第6章中央处理器.ppt》由会员分享,可在线阅读,更多相关《第6章中央处理器.ppt(58页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第6章中央处理器 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望6.1 CPU6.1 CPU的组成与操作的组成与操作1 1、CPUCPU的组成的组成2 2、CPUCPU的四种基本功能的四种基本功能3 3、从内存读取一个字、从内存读取一个字4 4、把一个字写入主存、把一个字写入主存5 5、通用寄存器之间传送数据、通用寄存器之间传送数据6 6、完成算术、逻辑运算、完成算术、逻辑运算6.1 CPU6.1 CPU的组成与操作的组成与操作1 1、CPUCPU的组成:的组成:
2、PC程序计数器 IR指令寄存器指令译码器内部总线存储器数据寄存器MDR存储器地址寄存器MAR算数逻辑运算单元ALU通用寄存器R0到R(n-1)暂存寄存器Y、Z6.1 CPU6.1 CPU的组成与操作的组成与操作6.1 CPU6.1 CPU的组成与操作的组成与操作6.1 CPU6.1 CPU的组成与操作的组成与操作2 2、CPUCPU的四种基本功能的四种基本功能 :(1)、读取某一主存单元的内容,并将其装入某一个CPU寄存器;(2)、把一个数据字从某一个CPU寄存器存入某个给定的主存单元中;(3)、把一个数据字从某一个CPU寄存器送到另一个寄存器或者ALU;(4)、进行一个算术运算或逻辑运算,将
3、结果送入某一个CPU寄存器。6.1 CPU6.1 CPU的组成与操作的组成与操作3 3、从内存读取一个字:、从内存读取一个字:举例:假设要访问的主存单元地址放在寄存器R1中,并且要求把读出的内容装入寄存器R2。(1)、MARR1(R1out,MARin)(2)、Read(3)、WMFC;等待MFC信号(Wait MFC)(4)、R2MDR(MDRout,R2in)6.1 CPU6.1 CPU的组成与操作的组成与操作(1 1)、)、MARR1(R1MARR1(R1outout,MARMARinin)(2 2)、)、ReadRead(3 3)、)、WMFC WMFC;等待;等待MFCMFC信号信号
4、(Wait MFCWait MFC)(4 4)、)、R2MDR(MDRR2MDR(MDRoutout,R2R2inin)6.1 CPU6.1 CPU的组成与操作的组成与操作4 4、把一个字写入主存、把一个字写入主存 :举例:假设要写入的数据字放在R2中,存储单元的地址放在R1中。(1)、MARR1(R1out,MARin)(2)、MDRR2(R2out,MDRin)(3)、Write(4)、WMFC 6.1 CPU6.1 CPU的组成与操作的组成与操作(1 1)、)、MARR1(R1MARR1(R1outout,MAR,MARinin)(2 2)、)、MDRR2(R2MDRR2(R2outou
5、t,MDR,MDRinin)(3 3)、)、Write Write(4 4)、)、WMFC WMFC 6.1 CPU6.1 CPU的组成与操作的组成与操作5 5、通用寄存器之间传送数据、通用寄存器之间传送数据 :举例:将寄存器R1的内容传送到R4。R1out,R4in 6.1 CPU6.1 CPU的组成与操作的组成与操作R1R1outout,R4R4inin 6.1 CPU6.1 CPU的组成与操作的组成与操作6 6、完成算术、逻辑运算、完成算术、逻辑运算 :举例:完成寄存器R1的内容与寄存器R2的内容相加,并将结果送入寄存器R3。(1)、R1out,Yin(2)、R2out,Add,Zin(
6、3)、Zout,R3in 6.1 CPU6.1 CPU的组成与操作的组成与操作(1 1)、)、R1R1outout,Y Yinin (2 2)、)、R2R2outout,AddAdd,Z Zin in(3 3)、)、Z Zoutout,R3R3inin 6.1 CPU6.1 CPU的组成与操作的组成与操作接通三态门的时间 总线传输时间 通过ALU的延时 建立时间 保持时间 有效数据进入寄存器Z 准备下一操作的控制信号 下一操作开始 R2outt0 t1 t2 t3 t4 t5Zin图图6.3 加法操作期间控制信号的时序加法操作期间控制信号的时序R R2 2outout,AddAdd,ZinZi
7、n6.2 CPU6.2 CPU时序控制方式时序控制方式 1 1、同步控制方式、同步控制方式2 2、异步控制方式、异步控制方式3 3、联合控制方式、联合控制方式6.2 CPU6.2 CPU时序控制方式时序控制方式 1 1、同步控制方式:、同步控制方式:系统有一个统一的时钟,所有控制信号均来自这个统一的时钟信号。指令周期:指令周期:CPU每取出并执行一条指令所需要的全部时间。工作周期(机器周期):工作周期(机器周期):指令运行过程中相对独立的阶段。一般把指令的运行过程分为取指令取指令、读取操作数读取操作数及执行执行(包括写结果包括写结果)等三个基本工作周期。6.2 CPU6.2 CPU时序控制方式
8、时序控制方式 时钟周期:时钟周期:在一个机器周期里可以完成若干个微操作微操作,每个微操作都需一定的时间,可用时钟信号来控制产生每一个微操作命令。因此,一个机器周期内包含若干个时钟周期(又称节拍节拍或状态状态)。在每个节拍内机器可完成一个或几个需同时执行的微操作。6.2 CPU6.2 CPU时序控制方式时序控制方式 6.2 CPU6.2 CPU时序控制方式时序控制方式 2 2、异步控制方式、异步控制方式:没有基准时钟信号,没有固定的周期节拍和严格的时钟同步,执行每条指令和每个操作需要多少时间就占用多少时间。这种方式微操作的时序由专门的应答线路控制,即当CU发出执行某一微操作的控制信号后,等待执行
9、部件完成了该操作后发回“回答回答”(或“结束”)信号,再开始新的微操作,使CPU没有空闲状态,但因需要采用各种应答电路,故其结构比同步控制方式复杂。6.2 CPU6.2 CPU时序控制方式时序控制方式 3 3、联合控制方式:、联合控制方式:所谓联合控制方式是同步和异步控制方式的结合。对于不同的操作序列以及其中的每个操作,实行部分统一、部分区别对待的方式。6.3 CPU6.3 CPU控制流程控制流程 程序程序:能完成某个确定算能完成某个确定算法的指令序列。法的指令序列。计算机进行信息处理的计算机进行信息处理的过程就是不断地取指令、分过程就是不断地取指令、分析指令和执行指令这样一个析指令和执行指令
10、这样一个周而复始的过程。周而复始的过程。1 1、取指令、取指令:由程序计数器(由程序计数器(PCPC)指)指出当前指令地址,通过执行出当前指令地址,通过执行“MAR“MAR(PCPC)”和和“Read”“Read”命令,从主存中取出指令。命令,从主存中取出指令。6.3 CPU6.3 CPU控制流程控制流程2 2、分析指令、分析指令:对取出的指令进行分析,对取出的指令进行分析,指出它执行什么操作,产生指出它执行什么操作,产生相应的操作控制信号。如果相应的操作控制信号。如果参与操作的数据在主存中,参与操作的数据在主存中,则还需要形成操作数地址。则还需要形成操作数地址。3 3、执行指令、执行指令:根
11、据指令分析得到的根据指令分析得到的“操作命令操作命令”和和“操作数地址操作数地址”,按一定的算法形成相应,按一定的算法形成相应的操作控制命令序列,通过的操作控制命令序列,通过运算器、存储器及外部设备运算器、存储器及外部设备等的具体执行,实现每条指等的具体执行,实现每条指令的功能。令的功能。6.3 CPU6.3 CPU控制流程控制流程4 4、对异常情况和某些请求的、对异常情况和某些请求的(中断中断)处理处理:当机器出现某些异常情当机器出现某些异常情况,如算术运算溢出、数据况,如算术运算溢出、数据传送奇偶错等;或者某些外传送奇偶错等;或者某些外来请求,来请求,(如磁盘成批数据送如磁盘成批数据送存储
12、器结束或程序员从键盘存储器结束或程序员从键盘送入命令送入命令)等,此时由这些部等,此时由这些部件或设备发出件或设备发出“中断请求中断请求”信号,待执行完当前指令后,信号,待执行完当前指令后,CPUCPU响应该请求,中止当前执响应该请求,中止当前执行的程序,转去执行中断服行的程序,转去执行中断服务程序。当处理完毕后,再务程序。当处理完毕后,再返回原程序继续运行。返回原程序继续运行。6.4 6.4 控制器的组成控制器的组成1 1、程序计数器(、程序计数器(PCPC):又称指令计数器指令计数器或指令指针(指令指针(IPIP),在某些机器中用来存放正在执行的指令地址;在大多数机器中则存放要执行的下一条
13、指令的地址。指令地址的形成有两种可能:指令地址的形成有两种可能:一是顺序执行的情况,每执行一条指令,程序计数器加“1”以形成下条指令的地址。该加“1”计数的功能,有的机器是PC本身具有的,也有的机器是借用运算器完成的。二是在某些条件下,需要改变程序执行的顺序,这常由转移类指令形成转移地址送到PC中,作为下条指令的地址。6.4 6.4 控制器的组成控制器的组成2 2、指令寄存器(、指令寄存器(IRIR):用以存放现行指令,以便在整个指令执行过程中,实现一条指令的全部功能控制。3 3、指令译码器、指令译码器:又称操作码译码器操作码译码器,它对指令寄存器中的操作码部分进行分析解释,产生相应的控制信号
14、提供给操作控制信号形成部件操作控制信号形成部件。6.4 6.4 控制器的组成控制器的组成4 4、脉冲源及启停控制线路、脉冲源及启停控制线路:脉冲源脉冲源:产生一定频率的脉冲信号作为整个机器的时钟脉冲。启停线路启停线路:在需要的时候保证可靠地开放或封锁时钟脉冲,控制时序信号的发生与停止,实现对机器的启动与停机。5 5、时序信号产生部件、时序信号产生部件:以时钟脉冲为基础,具体产生不同指令相对应的周期、节拍等时序信号,以实现机器指令执行过程的时序控制。6.4 6.4 控制器的组成控制器的组成6 6、操作控制信号形成部件、操作控制信号形成部件:综合时序信号、指令译码信息、被控功能部件反馈的状态条件信
15、号等,形成不同指令所需要的操作控制信号序列操作控制信号序列。7 7、中断机构、中断机构:实现对异常情况和某些外来请求的处理。8 8、总线控制逻辑、总线控制逻辑:实现对总线信息传输的控制。6.4 6.4 控制器的组成控制器的组成启停控制线操作控制信号形成部件时序信号产生部件指令译码器指令寄存器程序计数器脉冲源状态寄存器通用寄存器ALU 总线控制逻辑中断机构+1转移 地址地址总线数据总线控制总线图图6.6 6.6 控制器组成框图控制器组成框图6.5 6.5 指令的执行过程指令的执行过程一、加法指令:一、加法指令:1 1、指令:、指令:Add R1 Add R1,(,(R3R3)该指令的功能是将某存
16、储单元的内容与寄存器R1的内容相加,结果存入R1中。存储单元的地址放在寄存器R3中(寄存器间接寻址)。2 2、执行这条指令需要下列动作:、执行这条指令需要下列动作:(1)取指令;(2)取操作数(由R3所指出的存储单元的内容);(3)完成加法运算;(4)结果存入R1中。6.5 6.5 指令的执行过程指令的执行过程3 3、操作控制序列(微操作序列):、操作控制序列(微操作序列):(图(图6.16.1所示的单总线结构)所示的单总线结构)步 动作1 PCout,MARin,Read,Clear Y,1C0,Add,Zin ;取指,(PC)+12 Zout,PCin,WMFC ;(PC)+1PC3 MD
17、Rout,IRin ;指令IR4 R3out,MARin,Read ;取数据 5 R1out,Yin,WMFC ;(R1)Y6 MDRout,Add,Zin ;相加7 Zout,R1in,End ;结果R16.1 CPU6.1 CPU的组成与操作的组成与操作6.5 6.5 指令的执行过程指令的执行过程二、无条件转移指令二、无条件转移指令(BR)(BR):步 动作1 PCout,MARin,Read,Clear Y,1C0,Add,Zin2 Zout,PCin,WMFC3 MDRout,IRin4 PCout,Yin5(IRIR的偏移字段的偏移字段)out,Add,Zin6 Zout,PCin,
18、End6.5 6.5 指令的执行过程指令的执行过程三、条件转移指令:三、条件转移指令:如果如果N N标志等于标志等于1 1则转移。则转移。步 动作1 PCout,MARin,Read,Clear Y,1C0,Add,Zin2 Zout,PCin,WMFC3 MDRout,IRin4 If N=0 then End,If N=1 then PCout,Yin5(IR的偏移字段)out,Add,Zin6 Zout,PCin,End6.6 6.6 指令流水指令流水1、指令流水原理 2、影响流水线性能的因素 3、超标量技术1 1、指令流水原理、指令流水原理指令的串行执行:指令的串行执行:取指令1 执行
19、指令1 取指令2 执行指令2 取指令3 执行指令3 在取指令时,执行部件是空闲的,在执行指令时,取指令部件基本上是空闲的。可以考虑在执行部件执行指令的同时取下一条指令,即两条指令的执行过程在时间上有重叠(即指令流水指令流水)。指令的二级流水:指令的二级流水:取指令1执行指令1取指令2执行指令2取指令3执行指令3取指令4执行指令41 1、指令流水原理、指令流水原理 指令六级流水:指令六级流水:取指(FI)指令译码(DI)计算操作数地址(CO)取操作数(FO)执行指令(EI)写操作数(WO)FIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICO
20、FOEIWOFIDICOFOEIWOFIDICOFOEIWO指令1指令2指令3指令4指令5指令6指令7指令8FIDICOFOEIWOt2 2、影响流水线性能的因素、影响流水线性能的因素1 1、访存冲突:、访存冲突:避免方法:(1)设置两个存储器系统分别放置指令和数据。(2)采用预取指令技术:设置指令队列,在执行指令过程中利用存储器空闲时间取指令,只要指令队列有空,就可以取下一条指令。2 2、影响流水线性能的因素、影响流水线性能的因素2 2、影响流水线性能的因素、影响流水线性能的因素2 2、相关问题、相关问题 :(1 1)控制相关:)控制相关:当一条指令需要等到前一条指令(或前几条指令)作出转移
21、方向的决定后才能进入流水线,即产生控制相关。(2 2)数据相关:)数据相关:指几条指令共用了同一个存储单元(或寄存器)的内容时所发生的关联。3 3、超标量技术、超标量技术 在每个时钟周期内可以同时并发多条独立指令,即以并行操作的方式将两条或两条以上的指令编译并执行。超标量处理机内部配置有多个功能部件和指令译码电路,以及多个寄存器端口和总线。条件:并发执行的指令不能相关。3 3、超标量技术、超标量技术6.7 6.7 操作控制信号形成部件操作控制信号形成部件 操作控制信号形成部件:操作控制信号形成部件:产生指令所需要的操作控制信号序列,用以控制计算机各部分的操作,它是整个控制器的核心,也是最复杂的
22、部件。一、组合逻辑控制与PLA控制二、微程序控制 一、组合逻辑控制与一、组合逻辑控制与PLAPLA控制控制1、组合逻辑控制2、PLA控制T1 T2 TnT1 T2 TnINS1INS1INS2INS2INSmINSm1 1、组合逻辑控制、组合逻辑控制(1 1)、组合逻辑控制器框图:)、组合逻辑控制器框图:时钟时钟控制步计数器控制步计数器 步译码器步译码器 编码器编码器标标志志 IRIR指指令令译译码码器器操作控制信号操作控制信号 1 1、组合逻辑控制、组合逻辑控制(2 2)、微操作命令的逻辑表达式:)、微操作命令的逻辑表达式:Zin=T1+T6ADD+T5BR+Zin=T1+T6ADD+T5B
23、R+End=T7ADD+T6BR+End=T7ADD+T6BR+(T6N+T6N+T4NT4N)BRN+BRN+2 2、PLAPLA控制控制 可编程逻辑阵列(可编程逻辑阵列(PLAPLA):):由一个“与”门阵列和一个“或”门阵列构成,它能实现一个多变量组合逻辑电路。2 2、PLAPLA控制控制F1F1F3F3F2F2F4F4a ad dc cb b图图6.18 PLA6.18 PLA模型模型F1=aF1=abcbcd+abd+abcdcd+bc+bcd d+abcabcd dF2=aF2=abcbcd+abcd+abcF3=abF3=abcdcd+abcabcd+bdd+bdF4=bcd+a
24、bc+bdF4=bcd+abc+bd2 2、PLAPLA控制控制 AND arrayAND array OROR array array IR IR 控制步控制步 计数器计数器 标标 志志操作控制信号操作控制信号 二、微程序控制二、微程序控制1、Wilkes微程序控制2、基本概念3、微指令的格式与编码4、微指令地址的生成1 1、WilkesWilkes微程序控制微程序控制微程序存储器(控制存储器)微指令机器指令微命令微操作1 1、WilkesWilkes微程序控制微程序控制 减少了电路的复杂性和非标准化程度减少了电路的复杂性和非标准化程度。提供了很大的灵活性灵活性,使得设计的变更、修改以及指令
25、系统的扩充都成为不太困难的事情。微程序控制器的主要缺点是:微程序控制器的主要缺点是:它要比相同或相近半导体技术的硬布线式控制器(如PLA方式)慢一慢一些些。6.5 6.5 指令的执行过程指令的执行过程3 3、操作控制序列(微操作序列):、操作控制序列(微操作序列):Add R1 Add R1,(,(R3R3)步 动作1 PCout,MARin,Read,Clear Y,1C0,Add,Zin ;取指,(PC)+12 Zout,PCin,WMFC ;(PC)+1PC3 MDRout,IRin ;指令IR4 R3out,MARin,Read ;取数据 5 R1out,Yin,WMFC ;(R1)Y
26、6 MDRout,Add,Zin ;相加7 Zout,R1in,End ;结果R12 2、基本概念、基本概念微命令:微命令:控制部件向执行部件发出的控制信号。微操作:微操作:执行部件接受到微命令后所做的动作。微指令:微指令:若干微命令的组合,用于产生一组控制信号,以控制执行一组微操作,完成一个基本的运算或传送功能。有时也将微指令称作控制字(CW),其中每一位代表一个微命令。微程序:微程序:完成指定任务的微指令序列。对应于一条机器指令。微程序存储器(控制存储器):微程序存储器(控制存储器):存放指令系统所对应的所有微程序的一个专门存储器。一般是只读存储器。2 2、基本概念、基本概念2 2、基本概念、基本概念2 2、基本概念、基本概念(1)微程序定义了计算机的指令系统。因此可以借助改变微程序存储器的内容来改变指令系统。这为计算机设计者及用户提供了相当大的灵活性;(2)一般而言,并不经常改变微程序存储器的内容,所以通常用只读存储器ROM充当微程序存储器;(3)任何机器指令的执行都将多次访问控制存储器,因此,此控制存储器的速度在决定计算机总的速度时起着主要的作用。作业作业 P177 1、3、5