为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

第五章 中央处理器

2012-02-07 50页 ppt 1MB 16阅读

用户头像

is_609550

暂无简介

举报
第五章 中央处理器nullnull 第五章 中央处理器第五章 中央处理器 第五章 中央处理器 CPU的功能和组成 (掌握) 指令周期(掌握) 时序产生器和控制方式(理解) 微程序控制器(掌握) 微程序设计技术(掌握) 硬布线控制器(理解) CPU的新技术(理解)教学要求课堂上注意听讲、重要的是理解 课堂外一定要看书复习或预习、完成作业5.1 CPU的功能和组成5.1 CPU的功能和组成什么是CPU? 所谓中央处理器是控制计算机来自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通常简称为CPU。CPU的基本组成 ...
第五章 中央处理器
nullnull 第五章 中央处理器第五章 中央处理器 第五章 中央处理器 CPU的功能和组成 (掌握) 指令周期(掌握) 时序产生器和控制方式(理解) 微程序控制器(掌握) 微程序设计技术(掌握) 硬布线控制器(理解) CPU的新技术(理解)教学要求课堂上注意听讲、重要的是理解 课堂外一定要看复习或预习、完成作业5.1 CPU的功能和组成5.1 CPU的功能和组成什么是CPU? 所谓中央处理器是控制计算机来自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通常简称为CPU。CPU的基本组成 中央处理器由两个主要部分——控制器和运算器组成。null控制器 由程序计数器(PC)、指令寄存器(IR)、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。 控制器的主要功能有: 从内存中取出一条指令,并指出下一条指令在内存中的位置。 对指令进行译码或测试,并产生相应的控制信号。 输出相应的控制信号,指挥并控制CPU,内存和I/O之间的数据流动的方向。null运算器 由算术逻辑单位(ALU)、累加寄存器(AC)、数据缓冲寄存器(DR)和状态条件寄存器(PSW)组成,它是数据加工处理部件。 相对控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。 运算器的主要功能: 执行所有的算术运算。 执行所有的逻辑运算,并进行逻辑测试。nullCPU的功能和组成CPU的功能和组成CPU的主要寄存器累加寄存器AC 累加寄存器AC通常简称为累加器,它的功能是:当运算器的算术逻辑单元(ALU)执行全部算术和逻辑运算时,为ALU提供一个工作区。累加寄存器是暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄存器。 2.指令寄存器IR 指令寄存器用来保存当前正在执行的一条指令。存放从内存中取出的指令;其中指令的操作码送到指令译码器,译码后输出控制信号。null 程序计数器PC 程序计数器中存放的是下一条指令在内存中的地址。 若程序顺序执行:PC  PC+1;若程序有跳转:PCPC+偏移地址。状态条件寄存器PSW 状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,同时状态条件寄存器还保存中断和系统工作状态等信息,以便使CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。 O 溢出 D 方向 I 中断允许 T 追踪 S 符号 Z 零 A 辅助进位 P 奇偶 C 进位CPU的功能和组成CPU的功能和组成 地址寄存器AR 地址寄存器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。 缓冲寄存器DR 缓冲寄存器用来暂时存放由内存储器读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在缓冲寄存器中。 CPU的功能CPU的功能(4)数据加工: 对数据进行算术运算和逻辑运算处理。完成数据的加工处理,这是CPU的根本的任务。(1)指令控制 :程序是指令的有序集合,保证机器按规定的顺序执行程序。(2)操作控制:CPU管理并产生由内存取出的每条指 令的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。(3)时间控制: 对各种操作实施时间上的控制,计算机中各种指令的操作信号均受到时间的严格控制。 5.2 指令周期5.2 指令周期程序的执行过程: 冯.诺依曼结构的计算机执行程序的顺序: 1. 从程序首地址开始。 2. 分步执行每一条指令,并形成下条待执行指令的地址。 3. 自动地连续执行指令,直到程序的最后一条指令。指令周期指令周期—读取指令 指令地址送入主存地址寄存器 读主存,读出内容送入指定的寄存器 —指令 —按指令规定内容执行指令 不同指令的操作步骤数 和具体操作内容差异很大 —检查有无中断请求 若无,则转入下一条指令的执行过程形成下一条指令地址指令的执行过程null指令周期的基本概念指令周期:CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需用的时间通常叫做一个指令周期。 机器周期:机器周期也称为CPU周期。通常用内存中读取一个指令字的最短时间来规定CPU周期。指令周期常常用若干个CPU周期数来示,时钟周期:一个CPU周期时间又包含有若干个时钟周期(通常称为节拍脉冲或T周期,它是处理操作的最基本单位)。这些时钟周期的总和则规定了一个CPU周期的时间宽度。指令周期指令周期指令周期指令周期下面以一个简单的程序来具体认识每一条指令的指令周期和执行过程。nullCLA指令的指令周期指令周期指令周期算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器 时序产生器时钟状态反馈取指控制执行控制cccc+1000 0202021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021指令周期指令周期算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器 时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021指令周期指令周期ADD指令的指令周期 ADD指令的指令周期由三个CPU周期组成。 第一个CPU周期为取指令阶段。和CLA指令相同。 第二个CPU周期中将操作数的地址送往地址寄存器并完成地址译码。 在第三个CPU周期中从内存取出操作数并执行相加的操作。 指令周期指令周期一个CPU周期一个CPU周期取指令阶段执行指令阶段开始取指令PC+1对指令译码送操作数地址取下条指令PC+1取出操作数执行加操作一个CPU周期指令周期指令周期算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器 时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 021ADDADD 30000 021000 022000 030000 0060+6=6000 006指令周期指令周期STA指令的指令周期 STA指令的指令周期由三个CPU周期组成。其中第一个CPU周期仍然是取指令阶段,其过程和CLA指令、ADD指令完全一样,不同的是此阶段中程序计数器加1后变为023,因而为取第四条指令做好了准备。我们假定,第一个CPU周期后结束,“STA 40”指令已放入指令寄存器并完成译码测试。 第二个CPU周期是送操作数地址。 第三个CPU周期是累加寄存器的内容传送到缓冲寄存器,然后再存入到所选定的存储单元中。指令周期指令周期算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器操作控制器 时序产生器时钟状态反馈取指控制执行控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 022STASTA 40000 022000 023000 040000 006000 006000 006指令周期指令周期NOP指令和JMP指令的指令周期 NOP指令是一条空指令,包含两个CPU周期,第一个周期取指令,第二个周期执行指令,因是空指令,所以操作控制器不发出任何控制信号。 JMP指令由两个CPU周期组成,第一个周期是取指令周期,同其他指令。第二个周期为执行阶段,CPU把指令寄存器中的地址码部分21送到程序计数器,从而用新内容21代替PC原先的内容25,这样,下一条指令将不从25单元中读出,而从21单元开始读出并执行,从而改变了程序原先的执行顺序 。指令周期指令周期算术逻辑单元状态条件寄存器程序计数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRALU指令寄存器IR指令译码器操作控制器 时序产生器时钟状态反馈取指控制执行控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 024JMP 21JMP 21000 024000 021000 006000 006000 025000 021null注意 执行“JMP 21”指令时,我们此处所给的四条指令组成的程序进入了死循环,除非人为停机,否则这个程序将无休止地运行下去,因而内存单元40中的和数将一直不断地发生变化。 当然,我们此处所举的转移地址21是随意的,仅仅用来说明转移指令能够改变程序的执行顺序而已。指令周期指令周期用方框图语言表示指令周期 在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。 一个方框代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制。 一个菱形符号代表某种判别或测试,不过时间它依附于它前面一个方框的CPU周期,而不单独占用一个CPU周期。 符号“~”代表一个公操作。null指令周期指令周期小结: 各类信息的传送路径 指令:M-----DR-----DBUS-----IR 地址:PC----ABUS---AR------(取决于寻址方式) 数据: 寄存器----寄存器 总线直接传送 寄存器----存储器 Ri----DBUS----DR-----M 存储器----寄存器 M-----DR------BUS----Rinull例:如图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器, ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。 1.“ADD R2,R0”指令完成(R0)+(R2)→R0功能操作。假设该指令的地址已放入PC中。 2.“SUB R1,R3”指令完成(R3)-(R1)→R3的功能操作。nullnullnull操作控制器和时序产生器 数据通路:通常把许多寄存器之间传送信息的通路称 为“数据通路”。 2. 操作控制器:根据指令操作码和时序信号,产生各种 操作信号,以便正确建立数据通路,从而完成取指令和执 行指令的操作。 3. 时序产生器:因为计算机高速地进行工作,每一个动 作的时间是非常严格的,不能有任何差错。时序产生器的 作用,就是对各种操作实施时间上的控制。时序产生器和控制方式时序产生器和控制方式时序信号的作用和体制 计算机的协调动作需要时间标志,而时间标志则是用时序信号来体现的。 操作控制器发出的各种控制信号都是时间因素(时序信号)和空间因素(部件位置)的函数。 组成计算机硬件的器件特性决定了时序信号最基本的体制是电位---脉冲制。null根据设计方法不同,操作控制器可分为时序逻辑型、存储逻辑型、时序逻辑与存储逻辑结合型三种。 1.硬布线控制器   是采用时序逻辑技术来实现的; 2.微程序控制器   是采用存储逻辑来实现的; 3.前两种方式的组合 时序产生器和控制方式时序产生器和控制方式硬布线控制器中 时序信号采用主状态周期——节拍电位—节拍脉冲 三级体制。时序产生器和控制方式时序产生器和控制方式主状态周期(指令周期):包含若干个节拍周期,可以用一个触发器的状态持续时间来表示。 节拍电位(机器周期):表示一个CPU 周期的时间,包含若干个节拍脉冲,表示较大的时间单位。 节拍脉冲(时钟周期):表示较小的时间单位。null节拍脉冲节拍电位1主状态周期节拍电位2null微程序控制中 时序信号采用节拍电位——节拍脉冲二级体制。触发器数据,电位控制信号,脉冲 数据准备好后,以电位的方式送触发器(可执行保存), 当控制信号来到后进用一个脉冲信号即可把数据装入触发器。时序产生器和控制方式时序产生器和控制方式微程序控制器时序信号产生器的组成 时钟源 环形脉冲发生器 节拍脉冲和读/写时序的译码 启停控制逻辑时序产生器和控制方式时序产生器和控制方式启停控制逻辑节拍脉冲和对时序译码逻辑环形脉冲发生器 IORQ MREQ RD WE T1 T2 T3 T4 IORQ° MREQ° RD° WE° T1° T2° T3° T4°MERQ’IORQ’RD’WR’时钟脉冲源Φ 时钟脉冲源环形脉冲发生器 节拍脉冲和对时序译码逻辑启停控制逻辑用来为环形脉冲发生器提供频率稳定且电平匹配的方波时钟脉冲信号。有石英晶体振荡器组成。产生一组有序的间隔相等或不等的脉冲序列。通常采用循环移位寄存器。时序产生器和控制方式时序产生器和控制方式控制方式 同步控制方式:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的。 采用完全统一的机器周期执行各种不同的指令。这意味这所有指令周期具有相同的节拍电位和相同的节拍脉冲数。 采用不定长的机器周期。 中央控制和局部控制相结合。 中央控制:就是将大部分指令安排在固定的机器周期完成。 局部控制:对少数复杂的指令采用另外的时序进行定时。 时序产生器和控制方式时序产生器和控制方式同步控制方式:时钟微操作信号1微操作信号2时序产生器和控制方式时序产生器和控制方式异步控制方式: 每条指令、每个操作控制信号需要多少时间就占用多少时间。这意味着每条指令的指令周期可由多少不等的机器周期数组成。时序产生器和控制方式时序产生器和控制方式异步控制方式命令1命令2操作信号1回答1操作信号2回答2命令3时序产生器和控制方式时序产生器和控制方式联合控制方式: 将同步控制方式和异步控制方式相结合的方式。 情况(1) 大部分操作序列安排在固定的机器周 期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束; 情况(2) 机器周期的节拍脉冲数固定,但是各条指令周期的机器周期数不固定。小 结小 结控制器的组成: 指令部件 程序计数器PC 指令寄存器 指令译码器 时序部件 脉冲源及启停逻辑 时序信号形成部件 控制方式小结小结程序计数器PC地址形成部件操作码 地址码译码微操作 信号形成节拍发生器时钟源中断控制逻辑状态寄存器微操作信号I/O信息 控制台信息+1送AR微程序控制器微程序控制器基本概念 组成 工作过程 微程序举例 微程序设计技术 微程序控制器的设计方法微程序控制器微程序控制器基本概念 微命令 微操作 微指令 微程序 控制存储器 微地址微程序控制器——基本概念微程序控制器——基本概念微程序控制器的基本思想: 将微操作控制信号按一定规则进行信息编码(代码化)形成控制字(微指令),一条机器指令对应一段“程序”,该程序存放在控制存储器中,因为“程序”的指令结果是实现一条机器指令的功能,所以称为“指令的微程序”。微程序控制器——基本概念微程序控制器——基本概念微命令:控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令称为微命令。 微操作:执行部件接受微命令后所进行的操作,称为微操作。微程序控制器——基本概念微程序控制器——基本概念微指令:在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。 微程序:微指令序列为微程序。微程序控制器——基本概念微程序控制器——基本概念程序机器指令1机器指令2机器指令i机器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序微程序控制器——基本概念微程序控制器——基本概念控制存储器: 用来存放实现全部指令系统的微程序。是一种高速存储器。 微地址: 人们常把全部指令的控制字存放在一个高速存储器中,即控制存储器中(简称控存),控存的一个单元的内容即控制字代表了某一个节拍的一组微操作控制信号的信息,而把控存单元的地址称为“微地址”。微程序控制器——组成微程序控制器——组成微指令寄存器: 用来存放由控制存储器读出的一条微指令信息。 微地址转移逻辑: 自动完成修改微地址的任务。null微程序控制器原理框图null 微程序控制器的工作过程实质上就是在微程序控制器的控制下,计算机执行机器指令的过程。 从控存中取出一段“取机器指令”用的微程序,称为取指微程序,这是一段公用的微操作,其首址通常放在“0”号微地址单元。该微程序完成从主存中读取机器指令并送往指令寄存器。 机器指令操作码通过微地址形成部件,产生对应的微程序入口地址,并送入微地址寄存器。 逐条取出对应的微指令,每一条微指令提供一个微命令序列,控制有关的微操作。 执行完对应于一条机器指令的一段微程序后,返回到取指微程序的入口,以便取出下一条机器指令。不断重复,直至程序执行完毕。微程序控制器——微程序举例微程序控制器——微程序举例null例: R1=3 R2=5 R1+R2->R3 1、控4=1,R1->多路开关->X 控7=1,R2->多路开关->Y 2、控+=1,ALU完成3+5 3、控3=1 3+5->R3微程序控制器——微程序举例微程序控制器——微程序举例微指令的格式:微程序控制器——微程序举例微程序控制器——微程序举例举例:“十进制加法”指令的微程序控制的过程。 十进制加法”指令的功能是用BCD码来完成十进制数的加法运算。在十进制运算时,当相加二数之和大于9时,便产生进位,要进行加6修正;当相加二数之和小于等于9时,结果是正确的。微程序控制器——微程序举例微程序控制器——微程序举例 假定数a和b已存放在R1和R2两寄存器中,数6存放在R3寄存器中。 算法要求先进行a+b+6运算,然后判断结果有无进位;当进位标志Cy=1不减6,当Cy=0,减6,从而可以获得正确的结果。null用BCD码完成A+B运算 1、A=1000 B=1001 1000 +1001 10001有进位,修正为: 10001 + 0110 101112、A=0110 B=1000 A+B+6=1 0100 有进位,正确3、A+B+6=1101 无进位,错误,修正: 1101 -0110 0111null~微程序控制器——微程序举例微程序控制器——微程序举例第一条微指令操作控制字段有五个微命令:第16位发出LDAR’,将PC内容送到地址寄存器AR;第13位发出RD’,第14位发出LDDR’,于是内存执行读操作,从内存取出“十进制加法”指令放到DR中,第15位发出LDIR’,将DR中的指令再送到指令寄存器IR中,第17位发出PC+1微命令,是程序计数器加1,做好取下一条机器指令的准备。null~微程序控制器——微程序举例微程序控制器——微程序举例第二条微指令null~微程序控制器——微程序举例微程序控制器——微程序举例第三条微指令null~微程序控制器——微程序举例微程序控制器——微程序举例第四条微指令null~ 以上是由四条微指令序列组成的简单微程序,从这个简单的控制模型中,我们就可以看到为程序控制的主要思想及大概过程。CPU周期与微指令周期的关系CPU周期与微指令周期的关系微指令周期:读出微指令的时间加上指令该条微指令的时间。如: 在T4节拍脉冲期间(200ns):取微指令;在T1的上升沿:微指令已经取好,在T1—T3期间(600ns):执行微操作。所以:在一个CPU周期内(800ns):取址指令:占1/4CPU周期;执行微指令:占3/4CPU周期。null机器指令和微指令的关系:程序计数器pc地址寄存器缓冲寄存器指令寄存器微地址寄存器微指令寄存器主存储器控制存储器微命令地址译码器地址译码+1null取机器指令,取微指令,它们之间是什么关系? 1.一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。简言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。 2.从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。 3. 每一个CPU周期对应一条微指令。null例:设某计算机运算器框图如下图A所示,其中ALU为16位的加法器(高电平工作),SA,SB为16位暂存器。4个通用寄存器由D触发器组成,Q端输出,其读、写控制功能见下表。null机器采用串行微程序控制方式,其微指令周期见图(b)。其中读ROM是从控存中读出一条微指令时间,为1μs;ALU工作是加法器做加法运算,为500ns;m1是读寄存器时间,为500ns;m2是写寄存器的工作脉冲宽度,为100ns。 微指令字长12位,微指令格式如下:F1:读R0-R3的选择控制 F2:写R0-R3的选择控制 F3:打入SA的控制信号F4:打入SB的控制信号 F5:打开非反相三态门的控制信号LDALU F6:打开反相三态门的控制信号LDALU并使加法器低位加1 F7:清暂存器SB为零的Reset信号 F8:一段微程序结束,转入取机器指令的控制信号 R:寄存器读命令 W:寄存器写命令 null要求:用二进制代码写出如下指令的微程序: (1)“ADD R0,R1”指令,即(R0)+(R1)→R1 (2)“SUB R2,R3”指令,即(R3)-(R2)→R3 (3)“MOV R2,R3”指令,即(R2)→(R3)null【解】 先画出三条指令的微指令的微程序流程图,如下图所示。(1)“ADD R0,R1” (2)“SUB R2,R3” (3)“MOV R2,R3”指令null其中未考虑“取指周期”和顺序控制问,也即微程序仅考虑“执行周期”,微指令序列的顺序用数字标号标在每条微指令的右上角。每一框表示一条微指令。 根据给定的微指令周期时间关系,完成ADD,SUB指令的执行动作需要3条微指令,MOV指令只需2条微指令。用二进制代码写出的三条指令的微程序列于下表中,其中*表示代码随意设置(0或1均可)。5.5 微程序设计技术5.5 微程序设计技术设计微指令结构应当追求的目标是: 1、有利于缩短微指令长度; 2、有利于减小控制存储器的容量; 3、有利于提高微程序的执行速度; 4、有利于对微指令的修改; 5、有利于提高微程序设计的灵活性;微程序控制器——设计技术微程序控制器——设计技术微命令编码 微地址的形成方法 微指令格式 微程序控制的设计方法 微程序控制器——设计技术微程序控制器——设计技术微命令编码 直接编码法 字段直接编译法 字段间接编译法null直接表示法 在微指令的操作控制字段中每一个微命令都用一位信息表示,对应于一种微操作。设计微指令时,选用或不选用某个微命令,只要将表示该微命令的相应位设置成“1”或“0”就可以了。因此,微命令的产生不必经过译码,所需的控制信号直接送到相应的控制点。 特点:直观、不必译码、速度快 微指令的长度太长,不好记忆,占用空间大微程序控制器——设计技术微程序控制器——设计技术编码表示法 将微指令的控制字段分为若干个小字段,每个字段分别编码,每种编码代表一种微命令。 把一组相斥性的微命令信号组成一个小组(即一个字段),然后通过小组(字段)译码器对每一个微命令信号进行译码,译码输出作为操作控制信号,其微指令结构如下图所示。null 采用字段译码的编码方法,可以用较小的二进制信息位表示较多的微命令信号。例如3位二进位译码后可表示8个微命令,4位二进制位译码后可表示16个微命令。与直接控制法相比,字译码控制法可使微指令字大大缩短,但由于增加译码电路,使微程序的执行速度稍稍减慢。微程序控制器——设计技术微程序控制器——设计技术 例如,某机器指令系统总共需要256个微命令,采用直接编码法,微指令的操作控制字段需256位,采用编译表示法,如将控制字段分成4位一段,共16段,每个字段经一个译码器输出,可获得16个微命令,总共16段就可获得256个微命令。微指令的操作控制字段仅64位。微程序控制器——设计技术微程序控制器——设计技术编码表示法的分段原则: 相斥性位命令分在同一字段内,相容性命令分在不同的字段内。前者可提高信息位的利用率,缩短微指令字长;后者有利于实现并行操作,加快指令的执行速度。 一般将同类操作中互斥的微命令划分在同一个字段中。 每个小字段包含的信息位不能太多,一般不超过6位,否则将增加译码线路的复杂性和译码时间。微程序控制器——设计技术微程序控制器——设计技术混合表示法   这种方法是把直接表示法与字段编码法混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要求。 另外,在微指令中还可附设一个常数字段。该常数可作为操作数送入ALU运算,也可作为计数器初值用来控制微程序循环次数。微程序控制器——设计技术微程序控制器——设计技术微地址的形成方法 根据机器指令操作码找到相应机器指令所对应的微程序的入口地址。 后继微地址的产生 计数器方式 多路转移方式 断定方式(下址字段方式)微程序控制器——设计技术微程序控制器——设计技术计数器方式: 设置一个微程序计数器uPC,在顺序执行微指令时,后继微指令地址由现行微地址加上一个增量来实现。遇到转移时,由微指令给出转移微地址。微程序控制器——设计技术微程序控制器——设计技术用计数器方式实现的微程序控制单元结构微程序地址字段格式的设计微程序地址字段格式的设计第一种方式: 将微指令的地址字段(顺序控制字段)分成两部分:转移控制字段BCF和转移地址字段BAF。 其中转移地址字段给出转移用部分微地址,转移控制字段用于规定后继微地址是顺序执行还是非顺序执行。微程序控制器——设计技术微程序控制器——设计技术计数器方式的优点是微指令字较短,便于编写微程序,后继微地址产生机构比较简单; 缺点是执行速度低,原因是计数器方式不易直接实现对应于各个测试条件的多路转移,而微程序的主要特点是存在大量的分支。null多路转移方式   一条微指令具有多个转移分支的能力称为多路转移。在多路转移方式中,当微程序不产生分支时,后继微地址直接由微指令的顺序控制字段给出;当微程序出现分支时,有若干“后选”微地址可供选择:即按顺序控制字段的“判别测试”标志和“状态条件”信息来选择其中一个微地址。“状态条件”有n位标志,可实现微程序2的n次方路转移,涉及微地址寄存器的n位 。 多路转移方式的特点是:能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快,但转移地址逻辑需要用组合逻辑方法设计。微程序控制器——设计技术微程序控制器——设计技术微指令格式 水平型微指令 垂直型微指令微程序控制器——设计技术微程序控制器——设计技术水平型微指令:一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。 基本特征: 微指令字较长 一条微指令能控制数据通路中多个功能部件并行操作。 微命令的编码简单,尽可能使微命令与控制门之间具有直接对应关系。 格式如下:微程序控制器——设计技术微程序控制器——设计技术垂直型微指令:在微指令中设置微操作码字段,采用为操作码编译法,由操作码规定为微指令的功能,称为垂直型微指令。 基本特征: 微指令字短。 微指令的并行操作能力有限,一条微指令只能控制数据通路中的一、两个信息传送。 实现一条机器指令的微程序要比水平型微指令编写的微程序长。null设微指令字长为16位,微操作码3位。 (1)寄存器-寄存器传送型微指令 其功能是把源寄存器数据送目标寄存器。13—15位为微操作码(下同),源寄存器和目标寄存器编址各5位,可指定31个寄存器。null(2)运算控制型微指令 其功能是选择ALU的左、右两输入源信息,按ALU字段所指定的运算功能(8种操作)进行处理,并将结果送入暂存器中。左、右输入源编址可指定31种信息源之一。null(3)访问主存微指令 其功能是将主存中一个单元的信息送入寄存器或者将寄存器的数据送往主存。存储器编址是指按规定的寻址方式进行编址。第1,2位指定读操作或写操作(取其之一)。null(4)条件转移微指令 其功能是根据测试对象的状态决定是转移到D所指定的微地址单元,还是顺序执行下一条微指令。9位D字段不足以表示一个完整的微地址,但可以用来替代现行μPC的低位地址。 测试条件字段有4位,可规定16种测试条件。null水平型微指令与垂直型微指令的比较 (1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则较差。 (2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。 (3)由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。垂直型微指令则相反。 (4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。5.6 硬布线控制器(组合逻辑控制器)5.6 硬布线控制器(组合逻辑控制器)基本思想: 把控制部件看成作为生产专门固定时序控制信号的逻辑电路,而此逻辑电路以使用最少元件和取得最高操作速度为设计目标。 这种逻辑电路是一种由门电路和触发器构成的复杂树形网络,故称为硬布线控制器。由于门电路多是组合逻辑电路所以也称为组合逻辑控制器。硬布线控制器硬布线控制器硬布线控制器的结构图null逻辑网络的输入信号来源有三个: (1)来自指令操码译码器的输出Im; (2)来自执行部件的反馈信息Bj; (3)来自时序产生器的时序信号,包括节拍电位信号M和节拍脉冲信号T。 逻辑网络N的输出信号就是微操作控制信号,它用来对执行部件进行控制。 硬布线控制器的基本原理: C=f( Im,Mi,Tk,Bj ) 实现:每一个操作控制信号与指令,时序,条件都有一个逻辑关系,用逻辑表达式描述。null硬布线控制器评价: 速度快 电路设计太复杂 增加功能不太可能硬布线控制器硬布线控制器时序 采用三级时序,设置三个机器周期,每个机器周期可以完成一次主存的读/写操作,每个机器周期可分为若干个节拍,每个节拍可分为若干个脉冲。null中国科学院自动化研究所1999年试题   比较硬布线控制和微程序控制? 【解答】 ①硬布线控制与微程序控制器相同之处是根据指令操作码和时序信号,产生各种控制信号,以便正确地建立各种数据通路,完成取指令和执行指令的控制。 ②硬布线控制的优点是由于控制器的速度取决于电路延迟,所以速度较快。 null③硬布线控制的主要缺点是由于将控制部件看成专门产生固定时序控制信号的逻辑电路,所以把用最少元件和取得最高速度作为设计目标。一旦设计完成,不可能通过其他的修改添加新功能。 ④微程序控制的主要优点是同硬布线控制器相比,具有规整性、灵活性、可维护性等一系列优点。 ⑤微程序控制的主要缺点是由于微程序控制器采用了存储程序原理,所以每条指令都要从控存中取一次,因此影响了速度。5.7 典型CPU5.7 典型CPUM6800CPU Inter 8088CPU IBM 370 CPU Intel 80486 CPU5.8 流水CPU5.8 流水CPU并行处理技术 并行性的两种含义: 同时性 指两个以上事件在同一时刻发生; 并发性 指两个以上事件在同一时间间隔内发生。 时间并行 空间并行 时间并行+空间并行微程序控制器——设计技术微程序控制器——设计技术微指令的执行方式 串行执行方式微程序控制器——设计技术微程序控制器——设计技术并行执行方式取i条 执行i条null1.时间并行   时间并行指时间重叠,在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。 2.空间并行   空间并行指资源重复,在并行性概念中引入空间因素,以“数量取胜” 为原则来大幅度提高计算机的处理速度。 3.时间并行+空间并行   指时间重叠和资源重复的综合应用 ,既采用时间并行性又采用空间并行性。显然,第三种并行技术带来的高速效益是最好的。null流水计算机的系统组成   现代流水计算机的系统组成原理如下图所示。其中CPU按流水线方式组织,通常由三部分组成:指令部件、指令队列、执行部件。这三个功能部件可以组成一个3级流水线。流水CPU的时空图流水CPU的时空图计算机的流水处理过程非常类似于工厂中的流水装配线。为了实现流水,首先把输入的任务(或过程)分割为一系列子任务,并使各子任务能在流水线的各个阶段并发地执行。当任务连续不断地输入流水线时,在流水线的输出端便连续不断地吐出执行结果,从而实现了子任务级的并行性。 下面通过时空图来证明这明这个结论。null表示流水CPU中一个指令周期的任务分解。表示非流水计算机的时空图null表示流水计算机的时空图。表示超标量流水计算机的时空图。null流水线的分类 指令流水线 算术流水线 处理机流水线 流水线中的主要问题 资源相关 数据相关 控制相关null资源相关   资源相关是指多条指令进入流水线后在同一机器时钟周期内争用同一个功能部件所发生的冲突。 数据相关   在一个程序中,如果必须等前一条指令执行完毕后,才能执行后一条指令,那么这两条指令就是数据相关的。 控制相关   控制相关冲突是由转移指令引起的。当执行转移指令时,依据转移条件的产生结果,可能为顺序取下条指令;也可能转移到新的目标地址取指令,从而使流水线发生断流。流水线的优化流水线的优化数据相关 写后写 读后写 写后读 解决数据相关的途径 定向 载入延迟调度 插入空周期null流水线中有三类数据相关冲突:写后读相关;读后写相关;写后写相关。判断以下三组指令各存在哪种类型的数据相关。 (1) I1:  ADD R1,R2,R3 ; (R2) + (R3)->R1   I2:  SUB R4,R1,R5 ; (R1) - (R5)->R4 (2) I3:  STA M(x),R3 ;    (R3)->M(x),M(x)是存储器单元   I4:  ADD R3,R4,R5 ; (R4)+(R5)->R3 (3) I5:  MUL R3,R1,R2 ; (R1)×(R2)->R3  I6:  ADD R3,R4,R5 ; (R4) + (R5)->R3 null第(1)组指令中,I1指令运算结果应先写入R1,然后在I2指令中读出R1内容。由于I2指令进入流水线,变成I2指令在I1指令写入R1前就读出R1内容,发生RAW相关。 第(2)组指令中,I3指令应先读出R3内容并存入存储单元M(x),然后在I4指令中将运算结果写入R3。但由于I4指令进入流水线,变成I4指令在I3指令读出R3内容前就写入R3,发生WAR相关。 第(3)组指令中,如果I6指令的加法运算完成时间早于I5指令的乘法运算时间,变成指令I6在指令I5写入R3前就写入R3,导致R3的内容错误,发生WAW相关 。nullPentium CPU Pentium是Intel公司生产的超标量流水处理器,早期使用5V工作电压,后期使用3.3V工作电压。CPU的主频是片外主总线时钟频率(60MHz或66MHz)的倍频,有120,166,200MHz等多种。   CPU内部的主要寄存器宽度为32位,故认为它是一个32位微处理器。但它通向存储器的外部数总线宽度为64位,每次总线操作可以同时传输8个字节。以主总线(存储器总线)时钟频率66MHz计算,64位数据总线可使CPU与主存的数据交换速率达到528MB/s。 CPU支持多种类型的总线周期,其中一种称猝发模式,在此模式下,可在一个总线周期内读出或与入256位(32字节)的数据。null CPU外部地址总线宽度是36位,但一般使用32位宽,故物理地址空间为4096MB(4GB)。虚拟地址空间为64TB,分页模式除支持4KB页面外(与486相同),还支持2MB和4MB页面。其中2MB页面的分页模式必须使用36位地址总线。 CPU内部分别设置指令cache和数据cache,外部还可接L2cache。CPU采用U,V两条指令流水线,能在一个时钟周期内发射两条简单的整数指令,也可发射一条浮点指令。 操作控制器采用硬布线控制和微程序控制相结合的方式。大多数简单指令用硬布线控制实现,在一个时钟周期内执行完毕。对微程序实现的指令,也在2—3个时钟周期内执行完毕。null Pentium具有非固定长度的指令格式,9种寻址方式,191条指令,但是在每个时钟周期又能执行两条指令。因此它具有CISC和RlSC两者的特性,不过具有的CISC特性更多一些,因此被看成为一个CISC结构的处理器。以CISC结构实现超标量流水线,并有BTB方式的转移预测能力。null奔腾CPU的结构框图 CPU的结构框图请参见教材。 (1)超标量流水线 (2)指令cache和数据cache (3)浮点运算部件 (4)动态转移预测技术RISC CPURISC CPURISC的三个要素是: (1)一个有限的简单的指令集; (2)CPU配备大量的通用寄存器; (3)强调对指令流水线的优化。null基于三要素的RISC机器的特征是: (1)使用等长指令,目前的典型长度是4个字节。 (2)寻址方式少且简单,一般为2—3种,最多不超过4种,绝不出现存储器间接寻址方式。 (3)只有取数指令、存数指令访问存储器。指令中最多出现RS型指令,绝不出现SS型指令。 (4)指令集中的指令数目一般少于100种,指令格式一般少于4种。 (5)指令功能简单,控制器多采用硬布线方式,以期更快的执行速度。 null(6)平均而言,所有指令的执行时间为一个处理时钟周期。 (7)指令格式中用于指派整数寄存器的个数不少于32个,用于指派浮点数寄存器的个数不少于16个。 (8)强调通用寄存器资源的优化使用。 (9)支持指令流水并强调指令流水的优化使用。 (10)RlSC技术的复杂性于它的编译程序,因此软件系统开发时间比CISC机器长。典型实例典型实例Pentium II PowerPC MIPS R10000 UltraSPARC II IA-64/Mercednull多媒体CPU         媒体 多媒体技术 多媒体技术解决的主要问题有: 1.图像与声音的压缩技术 2.适应多媒体技术的软件技术 3.计算机系统结构方面的技术nullMMX技术:          MMX是一种多媒体扩展结构技术,它极大提高了计算机在多媒体和通信应用方式的功能。带有MMX技术的CPU特别适合于数据量很大的图形、图像数据处理,从而使三维图形、图画、运动图像为目标的MPEG视频、音乐合成、语音识别、虚拟现实等数据处理的速度有了很大提高 。   MMX技术集成到新一代Pentium CPU时,主要体现在:   ①采用4种新的数据类型,②使用8个64 位宽的MMX寄存器,③增设57条新指令。null动态执行技术           动态执行技术 是指通过预测程序流来调整指令的执行,并分析程序的数据流来选择指令执行的最佳顺序。动态执行技术涉及数据相关性及指令调度法、转移预测法、指令的发射顺序与完成顺序等流水技术基本要素。null实现动态执行的关键:取消传统的“取指” 和“执行”两阶段之间指令需要线性排列的限制,而使用一个指令缓冲池以开辟一个较长的指令窗口,以便允许执行单元能在一个较大的范围内调遣和执行已译码过的程序指令流。 与指令缓冲池相连的三个硬件单元是: 取指/译码单元,调遣/执行单元,回收单元习题:习题:2、参见图5.15的数据通路。画出存数指令“STA R1,(R2)”的指令周期流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。标出个为操作信号序列。nullPC→ARM→DRDR→IRR2→ARR1→DRDR→M~PC0,G,ARiDR0,G,IRiR20,G,ARiR10,G,DRiR/W=W R/W=Rnull3、参见图5.15的数据通路,画出取数指令“LDA (R3),R0”的指令周期流程图,其含义是将(R3)为地址主存单元的内容取至寄存器R0中。标出个为操作信号序列。nullPC→ARM→DRDR→IRR3→ARM→DRDR→R0~PC0,G,ARiDR0,G,IRiR30,G,ARiDR0,G,R0IR/W=R R/W=Rnull6、假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令共用的。已知微指令长度为32位,请估算控制存储器容量。 解: (4+79*3)*32 =7712b=968B 或:80*(4-1)+1=241,241*32=7712b=968Bnull8、某机有8条微指令I1-I8,每条微指令所包含微命令控制信号如下标所示。nullA - j分别对应10种不同性质的为命令信号,假设一条微命令的控制字段仅限为8位,请安排微指令的控制字段格式。 答:因为8位要对应10种不同的信号,所以要将原来10种信号中不冲突的信号合在一起,用不同的二进制数来表示不同的状态。 我们发现E,F,H和B,I,J相互不冲突,所以分别用二位二进制数可以表示,如下: 00:E,01:F,10:H;00:B,01:I,10:J。微指令的控制字段格式:null9、微地址转移逻辑表达式如下: uA8=P1*IR6*T4 uA7=P1*IR5*T4 uA6=P2*IR6*T4 其中uA6- uA8为微地址寄存器相应位,P1和P2位判别标志,C为进位标志,IR5和IR6位指令寄存器的相应位,T4位时钟周期信号。说明上述逻辑表达式的含义,画出微地址转移逻辑图。null答:根据题义,可知,在P1条件下,当IR6=1时,T4脉冲到来时微地址寄存器uA8位将置“1”。在P1条件下,当IR5=1时,T4脉冲到来时微地址寄存器uA7位将置“1”。在P2条件下,当C=1时,T4脉冲到来时微地址寄存器uA6位将置“1”。null11、已知某机采用微程序控制方式,控存容量为512*48位。微程序可在整个控存中实现转移的条件有4个,微指令采用水平型格式,后继微指令地址采用断定方式。请问: 1、微指令的三个字段分别应为多少位? 2、画出对应这种微指令格式的微程序控制器逻辑框图。 null答:因为某机采用微程序控制方式,控存容量为512*48位。可知微指令共48位,可以对512个控存单元寻址,则29=512,而且微程序可在整个控存中实现转移的条件有4个,则要实现4个转移条件,需要二位二进制数,22=4。 因为微指令采用水平型格式,后继微指令地址采用断定方式。 则:后继微指令地址为9位,判断字段为2位,所以微命令字段为:48-2-9=37位。对应这种微指令格式的微程序控制器逻辑框图如下:对应这种微指令格式的微程序控制器逻辑框图如下:
/
本文档为【第五章 中央处理器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索