计算机组成原理:6.3 控制器的设计_第1页
计算机组成原理:6.3 控制器的设计_第2页
计算机组成原理:6.3 控制器的设计_第3页
计算机组成原理:6.3 控制器的设计_第4页
计算机组成原理:6.3 控制器的设计_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、控制器的功能:在时间和空间上产生正确的控制流,主要任务包括: 控制指令流出 控制指令分析 控制指令执行 控制指令流向 控制维护执行状态,存储器,运算器,控制器,6.3 控制器CU,指令流的产生和控制过程,6.3.2 控制单元的设计,重点掌握:微操作、微程序两个概念,硬布线控制器,又称组合逻辑控制器,6.3.2 控制单元的设计,1 组合逻辑设计,2 微程序设计,硬布线控制器是计算机中最复杂的逻辑部件之一。当执行不同的机器指令时,通过激活一系列彼此很不相同的控制信号来实现对指令的解释,其结果使得控制器往往很少有明确的结构而变得杂乱无章。结构上的这种缺陷使得硬布线控制器的设计和调试非常复杂且代价很大

2、。正因为如此,硬布线控制器被微程序控制器所取代。但是,在同样的半导体工艺条件下,硬布线控制器速度要比微程序控制的快,随着新一代机器及VLSI技术的发展与不断进步,硬布线的随机逻辑设计思想又得到了重视,现代新型计算机体系结构如RISC中多采用硬布线控制逻辑,6.3.2 控制单元的设计,1 组合逻辑设计,2 微程序设计,组合逻辑控制器和微程序控制器,两种控制器各有长处和短处: 组合逻辑控制器设计麻烦,结构复杂,一旦设计完成,就不能再修改或扩充,但它的速度快; 微程序控制器设计方便,结构简单,修改或扩充都方便,修改一条机器指令的功能,只需重编所对应的微程序;要增加一条机器指令,只需在控制存储器中增加

3、一段微程序,但是,它是通过执行一段微程,6.3.2 控制单元的设计,硬布线控制器,又称组合逻辑控制器,硬布线控制器主要由组合逻辑网络、指令寄存器和指令译码器、节拍电位/节拍脉冲发生器等部分组成。其中组合逻辑网络产生计算机所需的全部操作命令,是控制器的核心,1 组合逻辑设计,程序由一组指令组成; 指令由一个微程序实现 ; 微程序由一组微指令实现; 微指令由一组微操作实现,重点:弄清楚几个概念,1 组合逻辑设计,一、组合逻辑控制单元框图,1. CU 外特性,IR,操作码译码,2.节拍信号,CLK,T0,T1,T2,T3,程序与指令,说明:机器字长32位, 指令字长32位,具有代表性的5条指令 说明

4、:机器字长32位,指令字长32位,x=2004,2004,微操作,重点:弄清楚几个概念,一微操作的概念,一条指令的处理包括一系列控制过程。在这个控制过程中,由控制器发出的每个控制信号均通过硬连线的方式连接到某个特定部件,在空间上形成受控部件的操作; 一个部件能够完成的基本操作称为微操作,微操作可理解为是一个功能部件能够完成的最基本的硬件动作,是控制器需要处理的最小具有独立意义的操作。一条指令的执行可分解成为若干步微操作的执行,分析指令ADD x所涉及的微操作,PC送MAR” “设置读条件,访存结果送MBR,MBR送IR,IR地址字段送MAR” “设置读条件,访存结果送MBR,加法,PC4送PC

5、,如何来安排这些微操作的时序节拍,1. 微操作 ADD x指令,1)ADD x指令,1)ADD x指令,分析指令ADD x所涉及的微操作,PC送MAR” “设置读条件,访存结果送MBR,MBR送IR,IR地址字段送MAR” “设置读条件,访存结果送MBR,加法,PC4送PC,微操作与指令,按同样思路分析其它4条指令,得所有微操作集合,微命令 微操作的控制信号 控制部件通过控制线向执行部件发出的各种控制命令 微操作 执行部件接受微命令后所进行的最基本操作,控制部件与执行部件通过控制线和反馈信息进行联系,硬布线控制器的基本原理,归纳起来可叙述为: 某一微操作控制信号C是指令操作码译码器输出Im 、

6、时序信号(节拍电位Mi ,节拍脉冲Tk )和状态条件信号Bj 的逻辑函数,其数学描述为: C=f(Im,Mi,Tk,Bj ) 控制信号C是用门电路、触发器等许多器件采用布尔代数方法来设计实现的。当机器加电工作时,某一操作控制信号C在某条特定指令和状态条件下,在某一操作的特定节拍电位和节拍脉冲时间间隔中起作用,从而激活这条控制信号线,对执行部件实施控制,微操作与指令,重点:弄清楚几个概念,二、微操作的节拍安排,采用 同步控制方式,CPU 内部结构采用非总线方式,一般一个 机器周期 内有 3 个节拍(时钟周期,1. 安排微操作时序的原则,原则一 微操作的 先后顺序不得 随意 更改,原则二 被控对象

7、不同 的微操作 尽量安排在 一个节拍 内完成,原则三 占用 时间较短 的微操作 尽量 安排在 一个节拍 内完成 并允许有先后顺序,2. 取指周期 微操作的 节拍安排,原则二,原则二,原则三,3. 间址周期 微操作的 节拍安排,T0,T1,T2,T0,T1,T2,4. 执行周期 微操作的 节拍安排,CLA,COM,SHR,T0,T1,T2,T0,T1,T2,T0,T1,T2,CSL,STP,ADD X,STA X,T0,T1,T2,T0,T1,T2,T0,T1,T2,T0,T1,T2,LDA X,JMP X,BAN X,T0,T1,T2,T0,T1,T2,T0,T1,T2,5. 中断周期 微操作

8、的 节拍安排,T0,T1,T2,硬件关中断,中断隐指令完成,三、组合逻辑设计步骤,1. 列出操作时间表,T2,T1,T0,FE 取指,JMP,LDA,STA,ADD,COM,CLA,微操作命令信号,状态条件,节拍,工作周期标记,I,间址特征,T2,T1,T0,IND 间址,间址周期标志,T2,T1,T0,EX 执行,三、组合逻辑设计步骤,1. 列出操作时间表,1,1,1,1,1,1,1,1,1,1,三、组合逻辑设计步骤,1. 列出操作时间表,1,1,1,1,三、组合逻辑设计步骤,1. 列出操作时间表,1,1,1,1,1,1,1,1,1,1,1,1,1,2. 写出微操作命令的最简表达式,FE T

9、1 + IND T1 ( ADD + STA + LDA + JMP + BAN ) + EX T1 ( ADD +LDA,T1 FE + IND ( ADD + STA + LDA + JMP + BAN ) + EX ( ADD +LDA ),3. 画出逻辑图,特点,思路清晰,简单明了,庞杂,调试困难,修改困难,速度快,FE,IND,EX,LDA,ADD,JMP,BAN,STA,T1,RISC,2 微程序设计,一、微程序设计思想的产生,1951 英国剑桥大学教授 Wilkes,完成 一条机器指令,微操作命令 1,微操作命令 2,微操作命令 n,10100000,微指令 n,00010010

10、,存储逻辑,一条机器指令对应一个微程序,存入 ROM,基本思想 假设一条指令OnTv :开电视机 两个微操作:1 插上电源插头 2 按下电源开关,组合逻辑 微程序,微程序基本原理,微程序概念,将指令系统功能实现所需的控制信号以微指令为单位存储。微指令中的每一位对应一根控制信号线; 每条指令对应一段微程序; 微程序由若干条微指令构成; 机器执行指令时逐条取出微指令执行,使得相应部件执行规定的操作,执行完微程序,也就给出了该指令所需要的全部控制信号,从而完成一条指令的执行,控制存储器(CM,一条机器指令,一段微程序,M,二、微程序控制单元框图及工作原理,1. 机器指令对应的微程序,M+1,M,M+

11、2,P+1,K,K+2,P,P+2,K+1,2. 微程序控制单元的基本框图,顺序逻辑,CMAR,地址译码,至 CPU 内部和系统总线的控制信号,二、微程序控制单元框图及工作原理,M+1,M+2,P+1,P+2,K+1,K+2,M,M,转执行周期微程序,转取指周期微程序,3. 工作原理,3. 工作原理,1) 取指阶段,由 CMDR 发命令,形成下条微指令地址,由 CMDR 发命令,由 CMDR 发命令,M + 1,M + 2,形成下条微指令地址,执行取指微程序,2) 执行阶段,由 CMDR 发命令,由 CMDR 发命令,由 CMDR 发命令,执行 LDA 微程序,形成下条微指令地址 P + 1,

12、形成下条微指令地址 P + 2,形成下条微指令地址 M,3) 取指阶段,由 CMDR 发命令,全部微指令存在 CM 中,程序执行过程中 只需读出,关键,微指令的 操作控制字段如何形成微操作命令,微指令的 后续地址如何形成,执行取指微程序,微指令与微程序,重点:弄清楚几个概念,微指令与微程序,微程序 一条指令对应一段微程序 微指令序列 微程序 实现一条指令功能的许多条微指令组成的序列 微指令 将机器指令执行微操作序列中一个节拍内同时完成的微操作用控制位构成的二进制代码串来表示 指令的执行 微指令的序列 控制存储器 存放微程序的存储器 将所有指令对应的微程序保存在该存储器中,几个概念的对比,重点:

13、弄清楚几个概念,几个概念的对比 微命令 VS. 微操作 构成控制信号序列的最小单位,由控制部件向执行部件发送,是微操作的控制信号 执行部件接受微命令后进行的最基本的操作,是微命令控制的操作过程 实质是同一信号:对控制部件体现为微命令,对执行部件体现为微操作 机器指令 VS. 微指令 用户编程的基本单位,计算机能完成的最基本操作,机器指令由微指令解释执行 实现机器指令操作的一系列微命令的组合,几个概念的对比 程序 VS. 微程序 由机器指令构成,用户编制,可以修改 微程序是微指令的有序集合,用于描述机器指令,计算机设计者编制,不允许用户修改 主存储器 VS. 控制存储器 存放系统程序和用户程序,

14、容量大 存放机器指令系统的微程序,容量有限 微程序控制 VS. 组合逻辑控制 可调整,速度慢,实现复杂指令 不可调整,速度快,实现简单指令,机器指令与微指令的关系,机器指令对应一个微程序,这个微程序由若干微指令组成,一个微指令又包含多个微操作 机器指令与内存储器有关,微指令与控制存储器有关 每一个CPU周期对应一条微指令,微指令设计,有利于缩短微指令字长度 有利于减少控制存储器容量 有利于提高微程序执行速度 有利于对微指令进行修改 有利于提高微程序设计的灵活性,如果一台计算机的指令共有n个微操作,每一个微操作可用一个二进制位控制 当其中某一位为1时,则执行该位所控制的微操作 当其中某一位为0时

15、,就不执行这个微操作 n个控制位就构成一条微指令,微指令基本思想,微指令格式,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,操作控制,顺序控制,LDR1,LDR2,LDR3,R1X,R1Y,R2X,R2Y,DRX,R3Y,M,RD,LDDR,LDIR,LDAR,PC+1,P1,P2,直接地址,微指令格式,操作控制字段 操作控制字段直接给出多种微操作的控制信号 当操作控制字段的某一位为1时,表示该信号有效,将发出相应的微命令;该位为0时,表示该信号无效,不发出相应的微命令,微指令格式,顺序控制字段 用于控制微程序的执行顺序 包括判断逻辑字段和直接地址字段 直

16、接地址字段存放下一条微指令的地址 判断逻辑非零,则按约定好的规则,根据状态修正直接地址字段,从而得到下一条微指令的地址,把指令执行过程中涉及的各个微操作用微指令的形式表示 微指令固化在控制存储器中 指令执行时,从中取出微指令、译码,然后执行该微指令所指示的各个微操作,从而完成一条指令执行的一步控制 一条指令的执行过程是执行若干微指令序列的过程,基本处理原则,微指令周期,指从控制存储器读取一条微指令并执行完相应的微操作所需要的时间,微指令与微程序,重点:弄清楚几个概念,计算机组成原理 Slide 64,微指令与微程序,微程序 一条指令对应一段微程序 微指令序列 微程序 实现一条指令功能的许多条微

17、指令组成的序列 微指令 将机器指令执行微操作序列中一个节拍内同时完成的微操作用控制位构成的二进制代码串来表示 指令的执行 微指令的序列 控制存储器 存放微程序的存储器 将所有指令对应的微程序保存在该存储器中,三、微指令的编码方式(控制方式,1. 直接编码(直接控制)方式,在微指令的操作控制字段中, 每一位代表一个微操作命令,速度最快,某位为 “1” 表示该控制信号有效,2. 字段直接编码方式,将微指令的控制字段分成若干 “段”, 每段经译码后发出控制信号,每个字段中的命令是 互斥 的,缩短 了微指令 字长,增加 了译码 时间,微程序执行速度较慢,显式编码,3. 字段间接编码方式,4. 混合编码

18、,直接编码和字段编码(直接和间接)混合使用,5. 其他,隐式编码,四、微指令序列地址的形成,1. 微指令的 下地址字段 指出,2. 根据机器指令的 操作码 形成,3. 增量计数器,4. 分支转移,转移方式 指明判别条件,转移地址 指明转移成功后的去向,5. 通过测试网络,6. 由硬件产生微程序入口地址,第一条微指令地址 由专门 硬件 产生,中断周期 由 硬件 产生 中断周期微程序首地址,7. 后续微指令地址形成方式原理图,地址 选择,1,微程序入口,五、微指令格式,1. 水平型微指令,如 直接编码、字段直接编码、字段间接编码、 直接和字段混合编码,2. 垂直型微指令,类似机器指令操作码 的方式

19、,一次能定义并执行多个并行操作,由微操作码字段规定微指令的功能,3. 两种微指令格式的比较,1) 水平型微指令比垂直型微指令 并行操作能力强 , 灵活性强,2) 水平型微指令执行一条机器指令所要的 微指令 数目少,速度快,3) 水平型微指令 用较短的微程序结构换取较长的 微指令结构,4) 水平型微指令与机器指令 差别大,六、静态微程序设计和动态微程序设计,静态 微程序无须改变,采用 ROM,动态 通过 改变微指令 和 微程序 改变机器指令, 有利于仿真,采用 EPROM,七、毫微程序设计,1. 毫微程序设计的基本概念,微程序设计 用 微程序解释机器指令,毫微程序设计 用 毫微程序解释微程序,毫

20、微指令与微指令 的关系好比 微指令与机器指令 的关系,2.毫微程序控制存储器的基本组成,八、串行微程序控制和并行微程序控制,串行 微程序控制,并行 微程序控制,还需考虑 如何读出 这 3 条微指令 ,1. 写出对应机器指令的微操作及节拍安排,假设 CPU 结构与组合逻辑相同,1) 取指阶段微操作分析,T0,T1,T2,九、微程序设计举例,3 条微指令,2) 取指阶段的微操作及节拍安排,考虑到需要 形成后续微指令的地址,T0,T1,T2,T3,T4,T5,3) 执行阶段的微操作及节拍安排,考虑到需形成后续微指令的地址,取指微程序的入口地址 M 由微指令下地址字段指出,非访存指令,CLA 指令,T0,T1,COM 指令,T0,T1,CSL 指令,T0,T1,S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论