组成原理 控制器

1.控制器的功能
  • 控制器概述
    • 向计算机每个部件提供它们协调运行所需的控制信号
    • 依据当前正在执行的指令和它所处的执行步骤,形成并提供这一时刻计算机各部件所需要的控制信号
    • 控制器必须在恰当时刻特定部件发出具体的操作控制信号
    • 控制器对指令操作码的分析,就可以确定在该指令周期中要依次向哪些部件发出操作控制信号,即控制信号的定位由指令操作码的译码信号来决定
    • 操作控制信号的定时:使用主时钟信号(基准时钟信号)
  • 控制器的功能
    • 产生一组定时信号,由时序信号产生器产生
    • 产生执行每条指令所需的全部控制信号
    • 中断请求进行响应,中断响应,处理,返回的过程需控制器实施相关控制

2.控制器的组成和设计方法
  • 控制器的组成
    • 控制寄存器,译码器
      • PC:程序计数器,存放下一条将要执行的指令的地址
      • IR:指令寄存器,存放当前正在执行的指令地址
      • ID:指令译码器,对从主存取出来的指令进行译码
    • 时序信号产生器
    • 控制单元CU:输入:指令译码信号时序信号数据通路状态信号系统总线的请求和状态信号。输出:全机运行所需的全部控制信号
  • 控制单元CU的设计方法
    • 组合逻辑设计(硬布线设计方法):设计简单早期普遍使用设计过程繁琐设计实现后难以修改
    • 微程序设计方法(存储逻辑设计方法):组成核心:微程序存储器(控制存储器),微程序解释执行机器指令,是一种设计复杂控制单元的技术,但是微程序控制单元的硬件结构非常简单 ,缺点:控制信号形成速度慢
    • 组合逻辑与微程序混合:即改善了组合逻辑控制单元硬件的复杂性,又克服了微程序控制单元执行速度慢的缺陷,通常简单指令用组合逻辑实现,复杂指令用微程序实现

3.计算机的控制方式

计算机的控制方式,即产生不同微操作命令序列所用的时序控制方式

  • 同步控制
    • 使用统一时钟信号作为时间基准信号为所有操作定时
    • 任何情况下,指令执行所需的机器周期数时钟周期数固定不变
    • 任何指令的指令周期都是预先设定好的
    • 为不同操作预先分配时间时,通常按最慢速操作所需的时间为基准
    • 减弱了系统性能
  • 异步控制
    • 不需要统一的时钟信号
    • 允许每条指令,每个操作按实际所需占用时间
    • 无固定CPU周期和节拍,操作之间使用应答方式衔接
    • 可充分发挥各部件运行速度,时间利用率高
    • 控制信号复杂技术不易实现
  • 联合控制
    • 同步异步相结合
    • 大部分操作序列安排在固定的时钟周期,某些时间难以确定的操作以部件的应答信号作为本次操作的结束

4.组合逻辑控制器
  • 硬布线控制器
    • 把控制单元CU看作专门产生固定时序控制信号的逻辑电路
    • 目标:使用最少元件获得最高操作速度
    • 一旦控制单元构成后,无法增加新的控制功能
    • 设计和调试非常复杂
  • 门阵列控制器:由门阵列器件设计实现的控制器

5.微程序控制器

基本思想:将一条机器指令编写成一个微程序,每一个微程序包含若干条微指令,每一条微指令对应一个或几个微操作命令,将微程序存储到控制存储器中,

  • 微指令是二进制代码形式,每位代表一个控制信号,1有效,0无效
  • 特点:设计简便,只需修改微指令代码,就可改变机器指令操作内容,控制器设计,调试,修改相对容易
  • 微命令:即微操作命令控制部件通过控制信号线向执行部件发出各种控制命令
  • 微操作:由微命令控制实现的最基本的操作
    • 相容性微操作:同时或同一个CPU周期内可以并行执行的微操作
    • 互斥性微操作:不能同时或同一个CPU周期内可以并行执行的微操作
  • 微程序:解释执行机器指令
取指周期微操作节拍安排

间址周期微操作节拍安排
  • 微指令基本格式
    • 将一组实现一定功能的微命令组合起来,就构成一条微指令
    • 微操作控制μOP字段每一位表示一个微命令,1发出,0不发出
  • 顺序控制字段产生下一条微指令在控存中的地址(后继微地址)
    微指令基本格式
  • 微指令格式设计
    • 水平型微指令
      • 可同时给出多个并行操作的微命令
      • 微指令字长较长,微程序较短,并行操作能力强效率高灵活性强
      • 执行一条机器指令所需的微指令数目少,速度比垂直型快
      • 设计较为困难
      • 更为实用
    • 垂直型微指令
      • 只能同时给出1~2个微命令
      • 译码产生微命令速度慢
      • 微指令字长短,但微程序较长
      • 与机器指令类似,设计容易
  • 微命令编码方式(解决微指令操作控制字段的格式安排)
    • 直接编码
      • 微操作控制字段每一位表示一个微命令
      • 特点:微指令结构简单直观微指令执行速度快微指令字长长
直接编码
  • 字段直接编码
    • 利用微命令之间的相容互斥关系,将微操作控制字段分为若干小字段,把一组互斥微命令组织在一起,用一个小字段编码表示,相容的微命令安排在不同字段内每个小字段通过译码产生一条微命令
    • 微指令不能直接产生微命令,通过对小字段进行译码产生微命令
    • 每个字段的全0编码保留给无操作,故n位仅能安排2^n - 1个微命令
    • 特点:可压缩微指令字长译码过程影响微指令执行速度
字段直接编码
  • 字段间接编码
    • 在字段直接编码的基础上,规定一个字段的某些微命令,要兼由另一个字段中某些微命令来解释
    • 特点:可进一步缩短微指令长度消减微指令并行控制能力译码级数增加微指令执行速度慢
字段间接编码
  • 混合编码
    • 字段编码方式某些字段的位数只有1位时,可认为是直接编码字段编码相结合的混合编码方式
    • 可改善字段编码方式的灵活性执行速度
  • 其他方式,如设置常数字段,用来给需要的部件设置常数

  • 微地址形成方法(获得下一条微指令地址后继微地址的方法)
    • 直接表示方式(下地址字段):顺序控制字段直接给出

      • 微地址形成逻辑简单,使得微指令在控存可以不按顺序存放,但不能实现分支转移
        直接表示方式
    • 增量(计数器)方式

      • 控存地址寄存器(CMAR)具有计数功能,即作为微程序计数器(μPC)
      • 微指令可分为
        • 顺序微指令

          • CMAR <- (CMAR) +1获得后继微地址
          • 微指令中要专门留出1位区分顺序型和转移型微指令
            顺序微指令
        • 转移微指令

          • 转移条件字段给出测试判断条件
          • 转移条件满足时:后继微地址 = 转移地址
          • 转移条件不满足时:CMAR <- (CMAR) +1
          • 条件转移字段可按编码按位给出测试条件,按位给出时,每一位指定一个判断条件,某位为1说明该微指令执行时测试该位对应的条件,这样转移型微指令的转移条件字段必须有一位且只能有一位为1
          • 无条件转移时,转移条件字段设置全为0
    • 增量与下地址相结合方式 :微指令格式统一,每条指令都具有转移功能

      • 类似增量方式的转移型微指令
      • 仅能实现顺序执行两路分支转移
      • 转移条件字段
        • 按编码方式给出测试条件,但必须保留两个特殊编码全0表示无条件转移全1表示顺序执行,需译码确定具体测试条件
        • 按位给出确定的测试条件,每一位指定一个判断条件,某位为1说明该微指令执行时测试该位对应的条件,这样转移型微指令的转移条件字段必须有一位且只能有一位为1
    • 断定方式:后继微地址只能由微指令的顺序控制字段产生

      • 每一条微指令都具有转移能力,不需要μPC
      • 非测试地址由编址微程序时直接给定,通常作为后继微地址高位
      • 测试条件由编址微程序时指出要测试的机器状态,测试逻辑产生后继微地址低位
      • 灵活地实现多路转移,转移路数由后继微地址低位部分位数决定
        断定方式

你可能感兴趣的:(组成原理 控制器)