《(第8章)中央处理器课件.ppt》由会员分享,可在线阅读,更多相关《(第8章)中央处理器课件.ppt(106页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、主讲教师:李敏主讲教师:李敏计算机工程学院计算机工程学院计计 算算 机机 组组 成成 与与 体体 系系 结结 构构中央处理器中央处理器一、一、CPU的基本功能和组成的基本功能和组成8.1CPU的功能和组成的功能和组成 当当代代主主流流计计算算机机所所遵遵循循的的仍仍然然是是冯冯.诺诺依依曼曼的的“存储程序、程序控制存储程序、程序控制”思想思想 程程序序告告诉诉计计算算机机:应应该该逐逐步步执执行行什什么么操操作作;在什么地方找到用来操作的数据,结果存到何处在什么地方找到用来操作的数据,结果存到何处等等 中中央央处处理理器器是是控控制制计计算算机机自自动动完完成成取取出出指指令令和和执执行行指指
2、令令任任务务的的部部件件。它它是是计计算算机机的的核核心心部部件件,通通常简称为常简称为CPU(CentralProcessingUnit)控制器控制器完成对整个计算机系统操作的完成对整个计算机系统操作的协调与指挥协调与指挥。(1)(1)控控制制机机器器从从内内存存中中取取出出一一条条指指令令,并并指指出出下下一一条指令在内存中的位置;条指令在内存中的位置;(2)(2)对对指指令令进进行行译译码码,并并产产生生相相应应的的操操作作控控制制信信号号,送往相应的部件,启动规定的动作;送往相应的部件,启动规定的动作;(3)(3)指指挥挥并并控控制制CPUCPU、内内存存与与输输入入/输输出出(I/O
3、I/O)设设备备之间数据之间数据流动的方向流动的方向 运运算算器器是是数数据据加加工工处处理理部部件件,所所进进行行的的全全部部操操作作由由控制器发出的控制信号指挥控制器发出的控制信号指挥 (1)(1)执行所有的算术运算;执行所有的算术运算;(2)(2)执行所有的逻辑运算,并进行逻辑测试执行所有的逻辑运算,并进行逻辑测试8.1.1CPU的功能的功能 指令控制指令控制 保证机器按程序规定的顺序取出执行保证机器按程序规定的顺序取出执行 操作控制操作控制 CPUCPU产产生生每每条条指指令令所所对对应应的的操操作作信信号号,并并把把各各种种操操作作信信号号送送往往相相应应的的部部件件,从从而而控控制
4、制这这些些部部件件按按指指令令的的要求进行动作要求进行动作 时间控制时间控制 对各种操作的实施时间进行定时对各种操作的实施时间进行定时 数据加工数据加工 对数据进行算术运算和逻辑运算处理对数据进行算术运算和逻辑运算处理 控制器控制器完成对整个计算机系统操作的完成对整个计算机系统操作的协调与指挥协调与指挥。(1)(1)控控制制机机器器从从内内存存中中取取出出一一条条指指令令,并并指指出出下下一一条指令在内存中的位置;条指令在内存中的位置;(2)(2)对对指指令令进进行行译译码码,并并产产生生相相应应的的操操作作控控制制信信号号,送往相应的部件,启动规定的动作;送往相应的部件,启动规定的动作;(3
5、)(3)指指挥挥并并控控制制CPUCPU、内内存存与与输输入入/输输出出(I/OI/O)设设备备之间数据之间数据流动的方向流动的方向 运运算算器器是是数数据据加加工工处处理理部部件件,所所进进行行的的全全部部操操作作由由控制器发出的控制信号指挥控制器发出的控制信号指挥 (1)(1)执行所有的算术运算;执行所有的算术运算;(2)(2)执行所有的逻辑运算,并进行逻辑测试执行所有的逻辑运算,并进行逻辑测试算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC存储器存储器 I/OCPUALU指
6、令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制ccccc缓冲寄存器缓冲寄存器DRCPUCPU的基本模型的基本模型8.1.2 CPU8.1.2 CPU的基本组成的基本组成8.1.38.1.3CPUCPU中的主要寄存器中的主要寄存器 1.1.数据缓冲寄存器(数据缓冲寄存器(DRDR)暂时存放由内存读出或写入的指令或数据字暂时存放由内存读出或写入的指令或数据字2.2.指令寄存器(指令寄存器(IRIR)保存当前正在执行的一条指令保存当前正在执行的一条指令3.3.程序计数器(程序计数器(PCPC)确定下一条指令的
7、地址确定下一条指令的地址4.4.地址寄存器(地址寄存器(ARAR)保存当前保存当前CPUCPU所访问的内存单元的地址所访问的内存单元的地址5.5.累加寄存器(累加寄存器(ACAC)最常使用的最常使用的一个通用寄存器一个通用寄存器6.6.状态条件寄存器(状态条件寄存器(PSWPSW)保存由算术和逻辑指令的结果建立的各种条件码保存由算术和逻辑指令的结果建立的各种条件码8.1.4 8.1.4 操作控制器与时序产生器操作控制器与时序产生器 操操作作控控制制器器在在各各寄寄存存器器之之间间建建立立数数据据通通路路(传送信息的通路)(传送信息的通路)操操作作控控制制器器的的功功能能:就就是是根根据据指指令
8、令操操作作码码和和时时序序信信号号,产产生生各各种种操操作作控控制制信信号号,以以便便正正确确地地建建立立数数据据通通路路,从从而而完完成成取取指指令令和执行指令的控制和执行指令的控制1.硬布线控制器硬布线控制器2.微程序控制器微程序控制器时时序序产产生生器器产产生生并并发发出出计计算算机机所所需需要要的的时时序控制信号序控制信号二、指令周期二、指令周期8.2指令周期指令周期读取指令读取指令指令地址送入主存地址寄存器指令地址送入主存地址寄存器读主存,读出内容送入指定的寄存器读主存,读出内容送入指定的寄存器分析指令分析指令按指令规定内容执行指令按指令规定内容执行指令不同指令的操作步骤数不同指令的
9、操作步骤数和具体操作内容差异很大和具体操作内容差异很大检查有无中断请求检查有无中断请求若无,则转入下一条指令的执行过程若无,则转入下一条指令的执行过程形形成成下下一一条条指指令令地地址址 指令的执行过程指令的执行过程取指令执行指令8.2.1 8.2.1 指令周期的基本概念指令周期的基本概念 指指令令周周期期:CPUCPU从从内内存存取取出出一一条条指指令令并并执执行行完这条指令的时间总和完这条指令的时间总和 CPUCPU周周期期:又又称称机机器器周周期期(总总线线周周期期),CPUCPU访访问问内内存存所所花花的的时时间间较较长长,因因此此用用CPUCPU从从内内存存读读取取一一条条指指令字的
10、所需的最短时间来定义令字的所需的最短时间来定义 时时钟钟周周期期:通通常常称称为为节节拍拍脉脉冲冲或或T T周周期期。一一个个CPUCPU周期包含若干个时钟周期周期包含若干个时钟周期T T 相互关系相互关系:1 1个指令周期个指令周期 =若干个若干个CPUCPU周期周期 1 1个个CPUCPU周期周期 =若干若干T T周期周期 取指时间执行指令时间取指时间执行指令时间指令周期指令周期 CPU CPU周期周期 时钟周期时钟周期020 020 CLACLA;累加器清;累加器清0 0021 021 ADD 30ADD 30;(ACAC)+(3030)ACAC022 022 STA 40STA 40;
11、(;(ACAC)(40)(40)023 023 NOPNOP;空操作空操作024 024 JMP 21JMP 21;21 21 PC PC 030 000 006030 000 006;数据数据 040 040 存和数存和数;数据数据5 5条典型指令构成的简单程序条典型指令构成的简单程序一个一个CPU周期周期一个一个CPU周期周期取指令阶段取指令阶段执行指令阶段执行指令阶段开始开始取指令取指令PC+1对指令对指令译码译码执行指令执行指令取下条指取下条指令令PC+18.2.2 CLA指令的指令周期指令的指令周期取出取出CLA指令指令算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程
12、序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRCPUALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+1000 0202021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC
13、缓冲寄存器缓冲寄存器DRCPUALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021000 000执行执行CLA指令指令8.2.3ADD指令的指令周期 一个CPU周期 一个CPU周期取指令阶段取指令阶段执行指令阶段执行指令阶段开始开始取指令取指令PC+1对指令对指令译码译码送操作送操作数地址数地址取下条指取下条指令令PC+1取出操取出操作数作数执行加执行加操作
14、操作一个CPU周期算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 021ADDADD 30000 021000 022000 030000 0060+6=6000 006取出并执行取出并执行ADD指令指令8.2.4STA指令的指令周期指令的指令周期算术逻辑单元算术逻辑单元状态条件寄存
15、器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRCPUALU指令寄存指令寄存器器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 022STASTA 40000 022000 023000 040000 006000 006000 006取出并执行取出并执行STA指令指令8.2.5NOP指令和指令和JMP指令的指令
16、周期指令的指令周期算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 024JMP 21JMP 21000 024000 021000 006000 006000 025000 021取出并执行取出并执行JM
17、P指令指令三、用方框语言表示指令周期三、用方框语言表示指令周期8.3用方框图语言表示的指令周期用方框图语言表示的指令周期指令系统(模型机的五指令系统)指令系统(模型机的五指令系统)方框方框一个一个CPU周期周期方框内内容方框内内容数据通路操作或某种控制操作数据通路操作或某种控制操作菱形符号菱形符号判别或测试判别或测试公操作符号公操作符号前边所讲述的前边所讲述的5种操作的框图描述如下:种操作的框图描述如下:取下一条指令或与外围设备交换数据。取下一条指令或与外围设备交换数据。取指取指执行执行用方框图语言表示指令周期用方框图语言表示指令周期指存读指存读指存地址总线指存地址总线数存读数存读公操作公操作
18、例例1双总线结构机器的数据通路图双总线结构机器的数据通路图微操作信号微操作信号注意微操作控制信号(右边)注意微操作控制信号(右边)ALU0ALU0四、控制器的组成四、控制器的组成控控制制器器是是计计算算机机系系统统的的指指挥挥中中心心,它它把把运运算算器器、存存储储器器、输输入入输输出出设设备备等等部部件件组组成成一一个个有有机机的的整整体体,然然后后根根据据指指令的要求指挥全机的工作。令的要求指挥全机的工作。控制器的基本组成1.指令部件指令部件指指令令部部件件的的主主要要任任务务是是完完成成取取指指令令并并分分析析指令。指令部件包括:指令。指令部件包括:程序计数器程序计数器指令寄存器指令寄存
19、器指令译码器指令译码器暂暂存存在在指指令令寄寄存存器器中中的的指指令令只只有有在在其其操操作作码码部部分分经经过过译译码码之之后后才才能能识识别别出出这这是是一一条条什什么么样样的的指指令令,并并产产生生相相应应的的控控制制信信号号提提供供给给微微操操作信号发生器。作信号发生器。地址形成部件地址形成部件根根据据指指令令的的不不同同寻寻址址方方式式,形形成成操操作作数数的的有效地址。有效地址。控制器的基本组成 用用二二进进制制码码表表示示的的指指令令和和数数据据都都放放在在内内存存里里,那那么么CPU是怎样识别出它们是数据还是指令呢是怎样识别出它们是数据还是指令呢?从时间上来说从时间上来说:取指
20、令事件发生在指令周期的第一取指令事件发生在指令周期的第一个个CPU周期中,即发生在周期中,即发生在“取指令取指令”阶段,而取数据阶段,而取数据事件发生在指令周期的后面几个事件发生在指令周期的后面几个CPU周期中,即发生周期中,即发生在在“执行指令执行指令”阶段。阶段。从空间上来说从空间上来说:如果取出的代码是指令,那么一定如果取出的代码是指令,那么一定经经DR送往指令寄存器送往指令寄存器IR,如果取出的代码是数据,那,如果取出的代码是数据,那么一定送往么一定送往运算器运算器。时间控制对计算机来说是非常重要的!时间控制对计算机来说是非常重要的!思考思考2.时序部件时序信号的作用和体制时序信号的作
21、用和体制 计计算算机机的的协协调调动动作作需需要要时时间间标标志志,而而且且需需要要采采用用多多级时序体制。而时间标志则用级时序体制。而时间标志则用时序信号时序信号来体现。来体现。硬硬布布线线控控制制器器中中,时时序序信信号号往往往往采采用用主主状状态态周周期期-节节拍电位拍电位-节拍脉冲节拍脉冲三级体制。三级体制。主主状状态态周周期期(指指令令周周期期):包包含含若若干干个个节节拍拍周周期期,可可以用一个触发器的状态持续时间来表示以用一个触发器的状态持续时间来表示节节拍拍电电位位(机机器器周周期期):表表示示一一个个CPU周周期期的的时时间间,包含若干个节拍脉冲包含若干个节拍脉冲节拍脉冲(时
22、钟周期):节拍脉冲(时钟周期):表示较小的时间单位表示较小的时间单位 3级时序信号级时序信号1、周期、周期(1)在一个控制阶段内均持续起作用的信号;)在一个控制阶段内均持续起作用的信号;(2)通常用周期状态寄存器来标志和指明某某周期控制;)通常用周期状态寄存器来标志和指明某某周期控制;(3)指令周期可分为取指周期、分析周期、执行周期。)指令周期可分为取指周期、分析周期、执行周期。2、节拍、节拍(1)把把一一个个机机器器周周期期分分成成若若干干个个相相等等的的时时间间段段,每每一一个个时时间间段段对对应应一一个个电电位信号,称节拍电位;位信号,称节拍电位;(2)一般都以能保证)一般都以能保证AL
23、U进行一次运算操作作为一拍电位的时间宽度。进行一次运算操作作为一拍电位的时间宽度。3、时标工作脉冲、时标工作脉冲(1)及时改变标志状态;及时改变标志状态;(2)时时标标脉脉冲冲的的宽宽度度一一般般为为节节拍拍电电位位宽宽度度的的1/N,只只要要能能保保证证所所有有的的触触发发器器都能可靠地,稳定地翻转即可。都能可靠地,稳定地翻转即可。节拍脉冲节拍电位1主状态周期主状态周期节拍电位2主状态周期主状态周期-节拍电位节拍电位-节拍脉冲节拍脉冲 IORQ MREQ RD WE T1 T2 T3 T4 IORQ MREQ RD WE T1 T2 T3 T4MERQIORQRDWR提提供供频频率率稳稳定定
24、且且电电平平匹匹配配的方波时钟脉冲信号的方波时钟脉冲信号由石英晶体振荡器组成由石英晶体振荡器组成产产生生一一组组有有序序的的间间隔隔相相等或不等的脉冲序列等或不等的脉冲序列启动停机时序信号产生器 启停控制逻辑启停控制逻辑节拍脉冲和读写时序译码逻辑节拍脉冲和读写时序译码逻辑环形脉冲发生器环形脉冲发生器时钟脉冲源时钟脉冲源时时序序部部件件能能产产生生一一定定的的时时序序信信号号,以以保保证证机机器器的的各各功功能能部部件件有有节节奏奏地地进进行行信信息传送、加工及信息存储。包括:息传送、加工及信息存储。包括:脉冲源脉冲源产产生生具具有有一一定定频频率率和和宽宽度度的的时时钟钟脉脉冲信号,为整个机器
25、提供基准信号。冲信号,为整个机器提供基准信号。启停控制逻辑启停控制逻辑启启停停控控制制逻逻辑辑的的作作用用是是根根据据计计算算机机的的需需要要,可可靠靠地地开开放放或或封封锁锁脉脉冲冲,控控制制时时序序信信号号的的发发生生或或停停止止,实实现现对对整整个个机机器器的的正确启动或停止。正确启动或停止。节拍信号发生器节拍信号发生器节节拍拍信信号号发发生生器器又又称称脉脉冲冲分分配配器器。脉脉冲冲源源产产生生的的脉脉冲冲信信号号,经经过过节节拍拍信信号号发发生生器器后后产产生生出出各各个个机机器器周周期期中中的的节节拍拍信信号号,用以控制计算机完成每一步微操作。用以控制计算机完成每一步微操作。一一条
26、条指指令令的的取取出出和和执执行行可可以以分分解解成成很很多多最最基基本本的的操操作作,这这种种最最基基本本的的不不可可再再分分割割的的操操作作称称为为微微操操作作。微微操操作作信信号号发发生生器器也也称称为为控控制制单单元元(CU)。不不同同的的机机器器指指令具有不同的微操作序列。令具有不同的微操作序列。4.中断控制逻辑中断控制逻辑中中断断控控制制逻逻辑辑是是用用来来控控制制中中断断处处理理的的硬硬件件逻逻辑辑。有有关关中中断断的的问问题题将将在在中中断断章章节中专门进行讨论。节中专门进行讨论。3.微操作信号发生器五、控制器的控制方式五、控制器的控制方式1.同步控制方式同步控制方式同同步步控
27、控制制方方式式即即固固定定时时序序控控制制方方式式,各各项项操操作作都都由由统统一一的的时时序序信信号号控控制制,在在每每个个机机器器周周期期中中产产生生统统一一数数目目的的节节拍拍电电位位和和工工作作脉脉冲冲。由由于于不不同同的的指指令令,操操作作时时间间长长短短不不一一致致。同同步步控控制制方方式式应应以以最最复复杂杂指指令令的操作时间作为统一的时间间隔标准。的操作时间作为统一的时间间隔标准。控制方式CPU周期周期取指周期取指周期CPU周期周期取源数取源数CPU周期周期取目标数取目标数CPU周期周期执行周期执行周期P0P1P2W0W1同步控制方式这这种种控控制制方方式式设设计计简简单单,容
28、容易易实实现现;但但是是对对于于许许多多简简单单指指令令来来说说会会有有较较多多的的空空闲闲时时间间,造造成成较较大大数数量量的的时时间间浪浪费费,从从而而影响了指令的执行速度。影响了指令的执行速度。在在同同步步控控制制方方式式中中,各各指指令令所所需需的的时时序序由由控控制制器器统统一一发发出出,所所有有微微操操作作都都与与时时钟钟同同步步,所所以以又又称称为为集集中中控控制制方方式式或或中中央央控制方式控制方式。1.同步控制方式(续)异异步步控控制制方方式式即即可可变变时时序序控控制制方方式式,各各项项操操作作不不采采用用统统一一的的时时序序信信号号控控制制,而而根根据据指指令令或或部部件
29、件的的具具体体情情况况决决定定,需需要要多多少时间,就占用多少时间。少时间,就占用多少时间。这这是是一一种种“应应答答”方方式式,各各操操作作之之间间的的衔衔接接是是由由“结结束束起起始始”信信号号来来实实现现的的。由由前前一一项项操操作作已已经经完完成成的的“结结束束”信信号号,或或由由下下一一项项操操作作的的“准准备备好好”信信号号来来作作为为下下一一项项操操作作的的起起始始信信号号,在在未未收收到到“结结束束”或或“准准备备好好”信信号号之之前前不不开开始始新新的的操作。操作。2.异步控制方式异异步步控控制制采采用用不不同同时时序序,没没有有时时间间上上的的浪浪费费,因因而而提提高高了了
30、机机器器的的效效率率,但但是是控控制比较复杂。制比较复杂。由由于于这这种种控控制制方方式式没没有有统统一一的的时时钟钟,而而是是由由各各功功能能部部件件本本身身产产生生各各自自的的时时序序信信号号自自我我控控制制,故故又又称称为为分分散散控控制制方方式式或或局局部控制方式部控制方式。2.异步控制方式(续)W0W1Wi第第N条指令条指令结束应答结束应答W0W1Wj第第N+1条指令条指令结束应答结束应答启动启动下一条下一条W0W1Wk第第N+2条指令条指令结束应答结束应答异步控制方式启动启动下一条下一条i、j、k不一定相等不一定相等一一般般采采用用两两条条定定时时控控制制线线:“请请求求”线线和和
31、“回回答答”线线演示演示这这是是同同步步控控制制和和异异步步控控制制相相结结合合的的方方式式。实实际际上上现现代代计计算算机机中中几几乎乎没没有有完完全全采采用用同同步步或或完完全全采采用用异异步步的的控控制制方方式式,大大多多数数是是采采用用联联合合控控制制方方式式。通通常常的的设设计计思思想想是是:在在功功能能部部件件内内部部采采用用同同步步方方式式或或以以同同步步方方式式为为主主的的控控制制方方式式,在在功功能能部部件件之之间采用异步方式。间采用异步方式。3.联合控制方式控控制制器器在在实实现现一一条条指指令令的的功功能能时时,总总要要把把每每条条指指令令分分解解成成为为一一系系列列时时
32、间间上上先先后后有有序序的的最最基基本本、最最简简单单的的微微操操作作,即即微微操操作作序序列列。微微操操作作序序列列是是与与CPU的的内内部部数数据据通通路路密密切切相相关关的的,不不同同的的数数据据通通路路就就有有不同的微操作序列。不同的微操作序列。假假设设规规定定各各部部件件用用大大写写字字母母表表示示,字字母母加加下下标标in表表示示该该部部件件的的接接收收控控制制信信号号,实实际际上上就就是是该该部部件件的的输输入入开开门门信信号号;字字母母加加下下标标out表表示示该该部部件件的的发发送送控控制制信信号号,实际上就是该部件的输出开门信号。实际上就是该部件的输出开门信号。复习:指令的
33、微操作序列六、微程序控制器六、微程序控制器微程序控制器微程序控制器它利用它利用软件方法软件方法(微程序设计技术微程序设计技术)来设计硬件)来设计硬件微微程程序序控控制制的的基基本本思思想想就就是是把把操操作作控控制制信信号号编编成成所所谓谓的的“微微指指令令”,存存放放到到一一个个只只读读存存储储器器里里(控控制制存存储储器器CM)。当当机机器器运运行行时时,一一条条又又一一条条地地读读出出这这些些微微指指令令,从从而而产产生生全全机机所所需需要要的的各各种种操操作作控控制信号,是相应部件执行所规定的操作制信号,是相应部件执行所规定的操作微微程程序序设设计计技技术术的的实实质质是是将将程程序序
34、设设计计技技术术和和存存储储技技术术相相结结合合,即即用用程程序序设设计计的的思思想想方方法法来来组组织织操操作作控控制制逻逻辑辑,将将微微操操作作控控制制信信号号按按一一定定规规则则进进行行信信息息编编码码(代代码码化化),形形成成控控制制字字(微微指指令令),再再把把这这些些微微指指令令按按时时间间先先后后排排列列起起来来构构成成微微程程序序,存放在一个只读的控制存储器中。存放在一个只读的控制存储器中。微命令微命令指令系统指令系统处理器内部可以分为:处理器内部可以分为:控制部件控制部件和和执行部件执行部件微命令:微命令:控制部件控制部件向向执行部件执行部件发出的控制命令发出的控制命令微操作
35、:微操作:执行部件执行部件接受接受微命令微命令后所进行的操作后所进行的操作(微操作在执行部件中是最基本的操作)(微操作在执行部件中是最基本的操作)微指令微指令:实现一定操作功能的一组微命令:实现一定操作功能的一组微命令微程序微程序:实现一条机器指令功能的微指令序列:实现一条机器指令功能的微指令序列指令系统所有指令,指令微程序指令系统所有指令,指令微程序微程序若干微指令,微指令一组微命令微程序若干微指令,微指令一组微命令微命令微命令微操作微操作微命令和微操作微命令和微操作一一条条机机器器指指令令可可以以分分解解成成一一个个微微操操作作序序列列,这这些些微微操操作作是是计计算算机机中中最最基基本本
36、的的、不不可可再再分分解解的的操操作作。在在微微程程序序控控制制的的计计算算机机中中,将将控控制制部部件件向向执执行行部部件件发发出出的的各各种种控控制制命命令令叫叫做做微微命命令令,它它是是构构成成控控制制序序列列的的最最小小单单位位。例例如如:打打开开或或关关闭闭某某个个控控制制门门的的电电位位信信号号、某某个个寄寄存存器器的的打打入入脉脉冲冲等等。因因此此,微微命命令令是是控控制制计计算算机机各各部部件件完完成成某某个基本微操作的命令。个基本微操作的命令。基本术语微微命命令令和和微微操操作作是是一一一一对对应应的的。微微命命令令是是微微操操作作的的控控制制信信号号,微微操操作作是是微微命
37、命令的操作过程。令的操作过程。微微命命令令有有兼兼容容性性和和互互斥斥性性之之分分。兼兼容容性性微微命命令令是是指指那那些些可可以以同同时时产产生生,共共同同完完成成某某一一些些微微操操作作的的微微命命令令;而而互互斥斥性性微微命命令令是是指指在在机机器器中中不不允允许许同同时时出出现现的的微微命命令令。兼兼容容和和互互斥斥都都是是相相对对的的,一一个个微微命命令令可可以以和和一一些些微微命命令令兼兼容容,和和另另一一些些微微命命令令互互斥斥。对对于于单单独独一一个个微微命命令令,谈谈论论其其兼兼容容和互斥都是没有意义的。和互斥都是没有意义的。机器指令与微指令机器指令与微指令 程序机器指令机器
38、指令1机器指令机器指令2机器指令机器指令i机器指令机器指令n.微指令微指令2微指令微指令1微指令微指令i微指令微指令n.微程序微指令、微地址微指令、微地址微微指指令令是是指指控控制制存存储储器器中中的的一一个个单单元元的的内内容容,即即控控制制字字,是是若若干干个个微微命命令令的的集集合合。存存放放控控制制字字的的控控制制存存储储器器的的单单元元地地址就称为微地址。址就称为微地址。一条微指令通常包含两部分:一条微指令通常包含两部分:操操作作控控制制字字段段,又又称称微微操操作作码码字字段段,用用以以产产生生某某一一步步操操作作所所需需的的各各微微操操作作控制信号;控制信号;顺顺序序控控制制字字
39、段段,又又称称微微地地址址码码字字段段,用用以以控控制制产产生生下下一一条条要要执执行行的的微微指指令令地址。地址。基本术语微周期微周期从从控控制制存存储储器器中中读读取取一一条条微微指指令令并并执执行行相相应应的的微微命命令令所所需需的的全全部部时时间间称称为为微微周期。周期。微程序微程序一一系系列列微微指指令令的的有有序序集集合合就就是是微微程程序。序。每一条机器指令都对应一个微程序每一条机器指令都对应一个微程序。基本术语(续)微微程程序序和和程程序序是是两两个个不不同同的的概概念念。微微程程序序是是由由微微指指令令组组成成的的,用用于于描描述述机机器器指指令令,微微程程序序实实际际上上是
40、是机机器器指指令令的的实实时时解解释释器器,是是由由计计算算机机的的设设计计者者事事先先编编制制好好并并存存放放在在控控制制存存储储器器中中的的,一一般般不不提提供供给给用用户户。对对于于程程序序员员来来说说,计计算算机机系系统统中中微微程程序序一一级级的的结结构构和和功功能能是是透透明明的的,无无须须知知道道。而而程程序序最最终终由由机机器器指指令令组组成成,是是由由软软件件设设计计人人员员事事先先编编制制好好并并存存放放在在主主存存或或辅辅存存中中的的。所所以以说说,微微程程序序控控制制的的计计算算机机涉涉及及到到两两个个层层次次:一一个个是是机机器器语语言言或或汇汇编编语语言言程程序序员
41、员所所看看到到的的传传统统机机器器层层,包包括括:机机器器指指令令、工工作作程程序序、主主存存储储器器;另另一一个个是是机机器器设设计计者者看看到到的的微微程序层,包括:微指令、微程序和控制存储器。程序层,包括:微指令、微程序和控制存储器。2.基本术语(续)通通常常,一一条条机机器器指指令令对对应应一一个个微微程程序序。由由于于任任何何一一条条机机器器指指令令的的取取指指令令操操作作都都是是相相同同的的,因因此此将将取取指指令令操操作作的的微微命命令令统统一一编编成成一一个个微微程程序序,这这个个微微程程序序只只负负责责将将指指令令从从主主存存单单元元中中取取出出送送至至指指令令寄寄存存器器中
42、中。此此外外,也也可可以以编编出出对对应应间间址址周周期期的的微微程程序序和和中中断断周周期期的的微微程程序序。这这样样,控控制制存存储储器器中中的的微微程程序序个个数数应应为为机机器器指指令令数数再再加加上上对对应应取取指指、间间址址和和中中断断周周期期等等公公用用的的微微程序数。程序数。机器指令对应的微程序程序计数器程序计数器PC地址寄存器地址寄存器AR缓冲寄存器缓冲寄存器DR指令寄存器指令寄存器IR微地址寄存器微地址寄存器AR微指令寄存器微指令寄存器IR主存储器主存储器控制存储器控制存储器CM微命令微命令地址译码器地址译码器地址译码地址译码机器指令级机器指令级微指令级微指令级1.微程序控
43、制器的基本组成微程序控制器的基本组成如如图图给给出出了了一一个个微微程程序序控控制制器器基基本本结结构构的的简简化化框框图图,在在图图中中主主要要画画出出了了微微程程序序控控制制器器比比组组合合逻逻辑辑控控制制器器多多出出的的部部件件,包包括括以以下下几几个个部部分分:控控制制存存储储器器、微微指指令令寄寄存器、微地址形成部件、微地址寄存器等。存器、微地址形成部件、微地址寄存器等。微程序控制器的组成和工作过程微程序控制器的基本结构微程序控制器的基本结构微程序控制器的基本结构控制存储器(控制存储器(CM)这这是是微微程程序序控控制制器器的的核核心心部部件件,用用来来存存放放微程序。微程序。微指令
44、寄存器(微指令寄存器(IR)用来存放从用来存放从CM中取出的微指令。中取出的微指令。微地址形成部件微地址形成部件用来产生初始微地址和后继微地址。用来产生初始微地址和后继微地址。微地址寄存器(微地址寄存器(MAR)接接受受微微地地址址形形成成部部件件送送来来的的微微地地址址,为为在在CM中读取微指令做准备。中读取微指令做准备。1.微程序控制器的基本组成执执行行取取指指令令公公共共操操作作。取取指指令令的的公公共共操操作作通通常常由由一一个个取取指指微微程程序序来来完完成成,这这个个取取指指微微程程序序也也可可能能仅仅由由一一条条微微指指令令组组成成。具具体体的的执执行行是是:在在机机器器开开始始
45、运运行行时时,自自动动将将取取指指微微程程序序的的入入口口微微地地址址送送 MAR,并并从从CM中中读读出出相相应应的的微微指指令令送送入入 IR。微微指指令令的的操操作作控控制制字字段段产产生生有有关关的的微微命命令令,用用来来控控制制计计算算机机实实现现取取机机器器指指令令的的公公共共操操作作。取取指指微微程程序序的的入入口口地地址址一一般般为为CM的的0号号单单元元,当当取取指指微微程程序序执执行行完完后后,从从主主存存中中取取出出的的机机器器指指令令就就已已存存入入指指令令寄寄存存器器IR中了。中了。2.微程序控制器的工作过程由由机机器器指指令令的的操操作作码码字字段段通通过过微微地地
46、址址形形成成部部件件产产生生该该机机器器指指令令所所对对应应的的微微程程序序的的入入口口地址,并送入地址,并送入 MAR。从从CM中中逐逐条条取取出出对对应应的的微微指指令令并并执执行行之。之。执执行行完完对对应应于于一一条条机机器器指指令令的的一一个个微微程程序序后后又又回回到到取取指指微微程程序序的的入入口口地地址址,继继续续第第步,以完成取下一条机器指令的公共操作。步,以完成取下一条机器指令的公共操作。以以上上是是一一条条机机器器指指令令的的执执行行过过程程,如如此此周周而而复始,直到整个程序执行完毕为止。复始,直到整个程序执行完毕为止。2.微程序控制器的工作过程(续)微微程程序序设设计
47、计控控制制单单元元的的主主要要任任务务是是编编写写对对应应各各条条机机器器指指令令的的微微程程序序,具具体体步步骤骤是是首首先先写写出出对对应应机机器器指指令令的的全全部部微微操操作作节节拍拍安安排排,然然后后确确定定微微指指令令格格式式,最最后后编编写写出每条微指令的二进制代码。出每条微指令的二进制代码。微程序控制单元设计确定微程序控制方式确定微程序控制方式根根据据计计算算机机系系统统的的性性能能指指标标(主主要要是速度)确定微程序控制方式。是速度)确定微程序控制方式。拟定微命令系统拟定微命令系统初初步步拟拟定定微微命命令令系系统统,并并同同时时进进行行微微指指令令格格式式的的设设计计,包包
48、括括微微指指令令字字段段的的划划分分、编编码码方方式式的的选选择择、初初始始微微地地址址和和后后继继微地址的形成等等。微地址的形成等等。1.微程序控制单元的设计步骤编制微程序编制微程序对对微微命命令令系系统统、微微指指令令格格式式进进行行反反复复的的核核对对和和审审查查,并并进进行行适适当当的的修修改改;对对重重复复和和多多余余的的微微指指令令进进行行合合并并和和精精简简,直直至编制出全部机器指令的微程序为止。至编制出全部机器指令的微程序为止。微程序代码化微程序代码化将将修修改改完完善善的的微微程程序序转转换换成成二二进进制制代码,这一过程称为代码化或代真。代码,这一过程称为代码化或代真。写入
49、控制存储器写入控制存储器最最后后将将一一串串串串二二进进制制代代码码按按地地址址写写入控制存储器的对应单元。入控制存储器的对应单元。1.微程序控制单元的设计步骤(续)微微指指令令可可以以分分成成操操作作控控制制字字段段和和顺顺序序控控制制字字段段两两大大部部分分。这这里里所所说说的的微微指指令令编编码码法法指指的的就就是是操操作作控控制制字字段段的的编编码码方方法法。各各类类计计算算机机从从各各自自的的特特点点出出发发,设设计计了了各各种各样的微指令编码法。种各样的微指令编码法。例例如如:大大型型机机强强调调速速度度,要要求求译译码码过过程程尽尽量量快快;微微、小小型型机机则则更更多多地地注注
50、意意经经济济性性,要要求求更更大大限限度度地地缩缩短短微微指指令令字字长长;而而中中型型机机介介于于这这两两者者之之间间,兼兼顾顾速速度度和和价价格格,要要求求在在保保证证一一定定速速度度的的情情况况下下,能能尽尽量量缩缩短微指令字长。短微指令字长。微指令编码法操操作作控控制制字字段段中中的的各各位位分分别别可可以以直直接接控控制制计计算算机机,无无须须进进行行译译码码。在在这这种种形形式式的的微微指指令令字字中中,操操作作控控制制字字段段的的每每一一个个独独立立的的二二进进制制位位代代表表一一个个微微命命令令,该该位位为为“1”表表示示这这个个微微命命令令有有效效,为为“0”则则表表示示这这