PC_控制器_微程序控制器和硬布线控制器
admin
2024-02-06 03:33:34
0

文章目录

  • 硬布线控制器
    • 🎈控制器硬布线构成
    • 微操作命令分析
      • 记号说明
      • 取指周期的微操作命令
      • 间址周期的微操作命令
      • 执行周期
        • 非访存指令
      • 访存类指令
      • 转移类指令
    • 🎈cpu(CU)的控制方式
      • 同步控制方式
      • 异步控制方式
      • (同步异步)联合控制方式
    • 硬布线控制单元设计
      • 列出微操作命令的操作时间表
      • 进行微操作信号综合
      • 绘制微操作命令逻辑图
  • 微程序控制
    • 基本概念
      • 🎈层次划分
      • 微操作&微命令
        • 微命令的相容性和互斥性
      • 微指令&微周期
        • 微指令包含的信息
      • 主存储器和控制存储器的比较
      • 程序和微程序
      • 寄存器对比
    • 微程序控制器组成
    • 微程序控制器的工作过程
    • 微程序和机器指令
    • 微指令的编码方式
      • 直接编码方式
      • 字段直接编址方式
      • 字段间接编码
      • 微指令地址的形成方式
        • 直接由微指令的下地址字段指出
        • 根据机器指令的操作码形成
        • 其他方式
    • 微指令格式
      • 水平型
      • 垂直型
      • 混合型微指令
    • 微程序控制单元的设计
      • 写出机器指令的微操作命令以及节拍安排
      • 确定微指令格式
      • 编写微指令码点
  • 🎈对比:微程序控制器和硬布线控制器

  • cpu的结构和工作流程/指令周期分析_xuchaoxin1375的博客-CSDN博客

硬布线控制器

  • PC_cpu的结构和工作流程/指令周期分析_xuchaoxin1375的博客-CSDN博客

🎈控制器硬布线构成

  • 指令的操作码是决定控制单元CU发出不同操作命令(控制信号)的关键
  • CU的输入信号来源有3类
    • 经指令译码器译码产生的指令信息
    • 时序系统产生的机器周期信号节拍信号
    • 执行单元的反馈信息(标志)
  • 节拍发生器产生各机器周期中的节拍信号,使用不同的微操作命令CiC_iCi​(控制信号)按时间顺序先后发出
  • 个别指令不仅受操作码控制,还受到状态标志控制
  • CU的输入来自于
    • 操作码译码电路ID
    • 节拍发生器
    • 状态标志
    • 此外,还接收来自系统总线(控制总线)的控制信号
      • 中断请求
      • DMA请求
  • 将处理结果输出到CPU内部或者外部控制总线上

微操作命令分析

记号说明

  • 为了简化书写,数将数据流经过的数据通路的总线部分(AB,CB,DB,IB)省略不写

取指周期的微操作命令

  • PC→MARPC\to{MAR}PC→MAR

    • 现行指令I地址(当前要执行的指令在存储器中的地址)存入到MAR,以便于从内存中将指令取出
  • 1→R1\to{R}1→R

    • 即:CU(R)→MCU(R)\to{M}CU(R)→M
    • 控制器向主存发送读命令(启动主存读操作)
    • 可以用1→R1\to{R}1→R来表示控制器发出读命令(将R置为1)
  • M(MAR)→MDRM(MAR)\to{MDR}M(MAR)→MDR

    • 将MAR(通过地址线AB)所指的主存单元M中保存的内容(指令)I,

      经过数据总线DB读入到cpu的MDR寄存器中

  • MDR→IRMDR\to{IR}MDR→IR

    • (在CPU内部)将MDR中的内容(指令)送往IR
  • OP(IR)→CUOP(IR)\to{CU}OP(IR)→CU

    • 进入分析指令阶段
    • 将指令的操作码OP(IR)传送到控制单元CU进行译码)
  • (PC)+1→PC(PC)+1\to{PC}(PC)+1→PC

    • 形成下一条指令的地址(默认自增1)

间址周期的微操作命令

  • 取操作数有效地址的任务
  • 先取得形式地址
  • 再取得有效地址
  • Ad(IR)→MARAd(IR)\to{MAR}Ad(IR)→MAR
  • 1→R1\to{R}1→R
    • 即CU(R)→MCU{(R)}\to{M}CU(R)→M
  • M(MAR)→MDRM(MAR)\to{MDR}M(MAR)→MDR
    • (现在MDR保存的是有效地址EA(对于一次寻址的指令而言)
  • MDR→Ad(IR)MDR\to{Ad(IR)}MDR→Ad(IR)
    • 将有效地址EA传送到指令寄存器的地址字段
    • 有些机器省略该步骤

执行周期

  • 比如:

非访存指令

  • 清除累加器指令CLA
    • 0→ACC0\to{ACC}0→ACC,将ACC寄存器置为0
  • 累加器取反指令COM
    • one’s complement反码
    • ACC‾→ACC\overline{ACC}\to{ACC}ACC→ACC累加器内容取反
  • 算数右移1位SHR
    • ACC内容算数右移1位
    • L(ACC)→R(ACC)L(ACC)\to{R(ACC)}L(ACC)→R(ACC)
    • ACC0→ACC0ACC_0\to{ACC_0}ACC0​→ACC0​(表示符号位不变)
  • 循环左移移位指令CSL
    • ACC内容循环左移1位
    • R(ACC)→L(ACC)R(ACC)\to{L(ACC)}R(ACC)→L(ACC)
    • ACC0→ACCnACC_0\to{ACC_n}ACC0​→ACCn​(或ρ−1(ACC)\rho^{-1}(ACC)ρ−1(ACC))
  • 停机指令STP
    • 计算机中的运行标志触发器G=1时,机器处于运行黄台
    • G=0时,机器停机
    • STP指令在执行阶段只需要将运行标志触发器G置为0
    • 即0→G0\to{G}0→G
  • 2个寄存器内容相加指令ADD AX BX
    • (AX)+(BX)→AX(AX)+(BX)\to{AX}(AX)+(BX)→AX

访存类指令

  • 加法指令ADD X
    • ACC的内容和主存X地址单元的内容相加
    • 结果送回到ACC
    • Ad(IR)→MARAd(IR)\to{MAR}Ad(IR)→MAR
    • 1→R1\to{R}1→R
    • M(MAR)→MDRM(MAR)\to{MDR}M(MAR)→MDR
    • (ACC)+(MDR)→ACC(ACC)+(MDR)\to{ACC}(ACC)+(MDR)→ACC
  • 存数指令STA X
    • STore Accumulator( contents in memory)
      • ref meaning of STA instruction
  • 取数指令LDA X
    • LoaD Accumulator with the contents from memory.
    • 总体效果:AD(IR)→ACCAD(IR)\to{ACC}AD(IR)→ACC
    • Ad(IR)→MARAd(IR)\to{MAR}Ad(IR)→MAR
    • 1→R1\to{R}1→R
    • M(MAR)→MDRM(MAR)\to{MDR}M(MAR)→MDR
    • MDR→ACCMDR\to{ACC}MDR→ACC

转移类指令

  • 以无条件转移指令JMPXJMP\ {X}JMP X为例
    • Ad(IR)→PCAd(IR)\to{PC}Ad(IR)→PC
      • 操作数地址码被传送到PC,cpu执行下一条指令的时候自然的跳转到指定位置执行新指令
  • 条件转移(负则转)BAN X
    • 根据上一条指令的执行结果决定下一条指令的地址
    • 如果结果为负
      • 累加器最高位(符号位为1,A0=1A_0=1A0​=1)
      • 将至令的地址码Ad(IR)送入到PC,作为下一条指令
    • 否则,直接执行下一条指令(A0=0A_0=0A0​=0)
      • PC中的内容有取值阶段的PC+1操作已经完成了默认的自增操作((PC)+1→PC(PC)+1\to{PC}(PC)+1→PC)
    • 用紧凑的逻辑语言表达式:
      • A0⋅Ad(IR)+A0‾⋅(PC)→PCA_0\cdot Ad(IR)+\overline{A_0}\cdot (PC)\to{PC}A0​⋅Ad(IR)+A0​​⋅(PC)→PC

🎈cpu(CU)的控制方式

  • 控制单元CU控制一条指令的形成,实质是依次执行一个确定的微操作序列的过程
  • 根据指令的复杂程度,不同指令的执行时间不同(执行每个微操作所需要的时间也不同)
  • 将如何形成控制不同微操作序列所采用的时序控制方式称为CU的控制方式

同步控制方式

  • 以最长的微操作序列和最繁琐的微操作为标准,系统用一个统一的时钟,所有信号都来自于这个统一时钟
  • 采取完全统一的,具有相同的时间间隔相同数目的节拍,作为机器周期来运行不同的指令
  • 特点是控制电路简单
  • 运行速度慢

异步控制方式

  • 不存在基准时标信号
  • 各个部件按照自身固有的速度工作
  • 通过应答方式进行联络
  • 特点:
    • 速度快
    • 控制线路复杂

(同步异步)联合控制方式

  • 介于同步和异步之间的一种方式
  • 对各种不同的指令的操作属性大部分采用同步控制,小部分采用异步控制的方法

硬布线控制单元设计

列出微操作命令的操作时间表

进行微操作信号综合

绘制微操作命令逻辑图

微程序控制

  • 相比于硬布线方式设计,微程序控制方式更受欢迎
    • 更加灵活

基本概念

  • 将每条机器指令编写成一个微程序
  • 每个微程序包含若干微指令
    • 微程序可以存到一个控制存储器其中
    • 寻址用户程序机器指令的办法来寻址每个微程序中的微指令
  • 每条微指令对应一个或多个微操作命令

🎈层次划分

  • 程序
    • 机器指令(大指令↔微程序\leftrightarrow{微程序}↔微程序)
      • 微指令
        • 微命令(微操作)

微操作&微命令

  • 微操作:是计算机中最基本的不可再分解的操作
    • 一条机器指令可以分解为一串微操作序列
  • 微命令:在微程序控制的计算机中,控制部件执行部件发出的各种控制命令称为微命令
    • 是构成控制序列的最小单位
      • 例如:
        • 打开/关闭某个控制门的电位信号
        • 对一个寄存器打入脉冲
    • 微命令和微操作是一 一对应的
      • 微命令是微操作的控制信号
      • 微操作是微命令的执行过程
  • 微命令和微操作在组合逻辑控制器中也有相应的概念

微命令的相容性和互斥性

  • 它们描述的是微命令间的相对协作关系

  • 相容性:具有相容性的微命令可以同时产生,共同完成一些微操作的微命令

  • 互斥性:机器中不允许同时出现的微命令

  • 相容性和互斥性具有相对性

    • 假设有微命令A,B,C
      • A和B相容
      • A和C互斥

微指令&微周期

  • 微指令:
    • 若干微命令的集合
  • 微周期
    • 从控制存储器中读取一段微指令并执行相应的微操作所需的时间
  • 微地址
    • 存放微指令的控制存储器单元地址

微指令包含的信息

  • 操作控制字段
    • 微操作码字段,用于产生某一个操作所需要的各种操作控制信号
  • 顺序控制字段
    • 微地址码字段,用于控制产生下一条要执行的微指令地址

主存储器和控制存储器的比较

  • 主存储器用于存放程序和数据,在cpu外部,用RAM实现

  • 控制存储器CM(controlMemory)在cpu内部,用ROM实现

    • 控制存储器(CM)用来存放实现全部指令系统的所有微程序,它是一种只读型存储器(ROM) .
    • 一旦微程序固化,机器运行时则只读不写
    • 其工作过程是:每读出一条微指令,则执行这条微指令;
    • 接着又读出下一条微指令.又执行这一条微指令.
    • 读出一条微指令并执行微指令的时间总和称为一个微指令周期.
    • 通常,在串行方式的微程序控制器中.微指令周期就是只读存储器的工作周期 .
    • 控制存储器的字长就是微指令字的长度,
      • 其存储容量视机器指令系统而定,即取决于微程序的数量.对控制存储器的要求是读出周期要短,因此通常采用双极型半导体只读存储器.
      • 控制存储器的容量为微指令数与字长的乘积
      • 控制存储器在CPU内,是CPU的组成部分

程序和微程序

  • 程序:
    • 指令的有序集合,用于完成特定的功能
  • 微程序
    • 微指令的有序集合;一条指令的功能有一段微程序来是实现
    • 微程序是由微指令组成的,用于描述机器指令
    • 微指令是机器指令的实时解释器
    • 由计算机设计者事先编制好,并存放在cpu的控制存储器CM中
      • 不提供给用户
    • 对于程序员来说,计算机系统的微程序的结构和功能是透明的
    • 而程序最终由机器指令组成,是有软件设计人员事先编制好并存放在主存或者辅存中的

寄存器对比

  • 地址寄存器MAR
  • 微地址寄存器CMAR
    • 存放微指令地址
  • 指令寄存器IR
  • 微指令寄存器CMDR或μIR\mu{IR}μIR
    • 存放微指令

微程序控制器组成

  • 微程序控制器性对于组合逻辑控制器要多出一些部件
    • 控制存储器CM
      • 存放各个指令对应的微程序
      • 控制存储器可以用ROM构成
    • 微指令寄存器(μIR或CMDR\mu{IR}或CMDRμIR或CMDR)
      • 存放从CM中取出的微指令
      • 它的位数同微指令字长相等
    • 微地址形成部件
      • 用户产生初始微地址
      • 后继微地址
      • 以保证微指令的连续执行
    • 微地址寄存器
      • 接受微地址形成部件送来的微地址,为cpu在CM中读取微指令做准备

微程序控制器的工作过程

  • 执行取微指令公共操作
  • 机器指令操作码字段通过微地址形成部件该机器指令的所对应的微程序的入口地址,并送入CMAR
    • 机器指令↔\leftrightarrow↔微程序
  • 从CM中逐条读取微指令执行
  • 执行完对应于一条机器指令的一个微程序
    • 回到取指 微程序的入口地址机器
    • 执行第一步的执行取微指令公共操作,完成下一条机器指令的公共操作

微程序和机器指令

  • 通常一条机器指令对应于一个微程序
    • 任何机器指令的取指操作都是相同的取指操作都是相同的
    • 可以将取值操作的微命令统一编成一个微程序,这个微程序只负责取指操作(将指令从主存单元中取出并送至指令寄存器IR)
    • 对应的,可以编制间址周期的微程序和中断周期的微程序
  • 控制存储器中的微程序数量为:
    • 机器指令数
    • 对应取指/间址/中断等共用的微程序数
    • 如果指令系统中有n种机器指令,控制存储器中有至少n+1个微程序
      • +1表示公共取指微程序

微指令的编码方式

  • 又称为微指令的控制方式
    • 如何对微指令的控制字段进行编码,形成控制信号
    • 在保证速度的情况下,缩短微指令字长

直接编码方式

  • 直接控制方式
  • 无需进行译码
  • 微指令的微命令字段中的每一位都表示一个微命令
  • 特点:
    • 速度快
    • 简单直观
    • 操作并行性好

字段直接编址方式

  • 将微指令的微命令字段分成若干个小字段
    • 互斥性微命令组合在同一个字段中
    • 相容性微命令组合在不同字段中
    • 每个小段中包含的信息位不能够太多,否则增加译码线路的复杂性和译码时间
    • 每个小段流出一个状态,表示本字段不发出任何微命令
      • 当某个字段的长度为3时,最多只能够表示7个互斥微命令
      • 通常用000表示不操作
  • 每个字段独立编码
  • 每种编码方式代表一个微命令,且各个字段编码含义单独定义,与其他字段无关
  • 特点
    • 可以缩短指令字长
    • 需要通过移码电路后再发送微命令,比直接编码方式慢

字段间接编码

  • 一个字段的某些微命令需要由另一个字段中的某些微命令来解释
    • 称为隐式编码
  • 这种方式可以进一步缩短微指令字长
  • 当时削弱了微指令的并行控制能力,通常作为字段直接编码的一种辅助手段

微指令地址的形成方式

直接由微指令的下地址字段指出

  • 微指令格式中设置一个下地址字段
  • 由微指令的下地址字段直接勾出后继微指令的地址
  • 又称为断定方式

根据机器指令的操作码形成

  • 机器指令取值指令寄存器(IR)后,微指令的地址由操作码经过微地址形成部件

其他方式

  • 增量计数法
    • (CMAR)+1→CMAR(CMAR)+1\to{CMAR}(CMAR)+1→CMAR,适用于后继微指令的地址连续的情况
  • 根据各种标志决定微指令分支转移的地址
  • 通过测试网络形成
  • 硬件直接产生微程序入口地址

微指令格式

  • 微指令的格式和编码方式有关
  • 分为水平型微指令和垂直型微指令两类

水平型

  • 从编码方式上看,直接编码/间接编码/字段间接编码/混合编码 都属于水平型微指令

    • A1A2⋯An−1An⏟操作控制;判断测试字段;后继地址字段⏟顺序控制\underbrace{A_1A_2\cdots{A_{n-1}}A_n}_{操作控制};\underbrace{判断测试字段;后继地址字段}_{顺序控制} 操作控制A1​A2​⋯An−1​An​​​;顺序控制判断测试字段;后继地址字段​​
  • 特点:

    • 微程序短,执行速度快,(执行一条指令时间短)
    • 并行操作能力强,效率高,灵活性强
    • 微指令长,编写微程序比较麻烦

垂直型

  • 类似机器指令操作码的方式,在微指令中设置微操作码字段

  • 采用微操作码编译法,有微操作码规定微指令的基本功能

  • μOPRdRs微操作码 目的地址 源地址 \begin{array}{|c|c|c|} \hline \mu \mathrm{OP} & \mathrm{Rd} & \mathrm{Rs} \\ \hline \text { 微操作码 } & \text { 目的地址 } & \text { 源地址 } \\ \hline \end{array} μOP 微操作码 ​Rd 目的地址 ​Rs 源地址 ​​

  • 特点

    • 微指令短,简单规整
    • 便于编写微程序(和指令比较类似,相对容易掌握)
    • 微程序长,执行速度慢,工作效率低

混合型微指令

  • 在垂直型的基础上增加一些不太复杂的并行操作
  • 特点
    • 微指令较短,便于编写
    • 微程序不长,执行速度较快

微程序控制单元的设计

  • 编写各条机器指令对应的微程序

写出机器指令的微操作命令以及节拍安排

  • 对于相同的cpu架构,无论是组合逻辑设计还是微程序设计,微操作命令和节拍安排都是极为相似

确定微指令格式

  • 微指令格式包括
    • 编码方式
    • 后继微指令地址的形成方式
    • 微指令字长
  • 微操作的个数决定了采用何种编码方式
    • 确定微指令的操作控制字段的位数
  • 微指令数确定微指令顺序控制字段数
  • 按照操作控制字段位数和顺序控制字段位数确定微指令字长

编写微指令码点

  • 根据操作控制字段 每位代表的微操作命令,编写每条微指令的码点

🎈对比:微程序控制器和硬布线控制器

  • 微程序控制器硬布线控制器
    工作原理微操作控制信号以微程序的形式存放在控制存储器中,执行指令是读取出来微操作控制信号有组合逻辑电路根据当前的指令码/状态/时序 即时产生
    执行速度
    规整性比较规整不规整
    应用场合CISC cpuRISC cpu
    扩充性易于扩充修改困难

相关内容

热门资讯

原创 3... 32岁程序员高先生在周六处理工作时突发不适,经抢救无效离世,这起事件引发了关于周末居家加班猝死能否认...
原创 别... 小毋今天想给大家好好聊一聊,1月21日,国际金价突破4850美元/盎司的消息刷了屏,可评论区里全是犹...
百度文心Moment大会开幕 ... 1月22日,百度发布并上线原生全模态大模型文心5.0正式版。该模型参数达2.4万亿,采用原生全模态统...
科技型中小企业融资记:从“不敢... 在中国创新驱动发展战略的背景下,科技型中小企业如雨后春笋般涌现。他们拥有前沿的技术、优秀的团队、广阔...
美元走软提振铜价上涨 美元走软和投资者普遍抛售货币和主权债券的影响,铜价攀升至每吨13,000美元以上。 1月23日,LM...
中稀有色大宗交易折价成交5.0... 中稀有色01月23日大宗交易平台共发生1笔成交,合计成交量5.00万股,成交金额359.50万元。成...
黄河财险2025年揽收保费16... (图片来源:视觉中国) 蓝鲸新闻1月23日讯(记者 陈晓娟)今日,黄河财产保险股份有限公司(下称“黄...
深圳调整商业用房购房贷款最低首... 观点网讯:1月23日,中国人民银行深圳市分行、深圳市住房和建设局消息,对深圳商业用房购房贷款政策作以...
洋河股份去年净利预降超六成,董... 中端和次高端价位段产品承压较大,苏酒龙头洋河股份去年净利润同比预降62%至68%。 1月23日晚间,...
金银价格在1月23日同时创下历... 金银价格在1月23日同时创下历史新高,市场情绪一下子被点燃,很多人都在感叹:这行情太猛了。黄金冲上4...
创金合信何媛:大类资产定价逻辑... 来源:滚动播报 (来源:财闻) 大部分基金经理将选择贴近基准进行类指数增强式投资,只有少数基金经理会...
全球最大海上风电制氢项目落地广... 1月23日,总投资110.9亿元的宝武清能(阳江)绿氢产业园项目在广东阳江正式启动。项目将建设年产8...
资产总额达32.5万亿元!上海... 上海国资国企改革发展最新部署! 1月23日,2026年上海市国资国企改革发展暨党建工作会议召开。证券...
艾媒咨询:2026年中国新消费... 今天分享的是:艾媒咨询:2026年中国新消费趋势白皮书 报告共计:194页 2026年中国新消费趋势...
山东“毛巾大王”豪送礼包背后:... 山东“毛巾大王”发福利! 1月23日盘后,“毛巾大王”孚日股份(002083.SZ)发布公告称,为庆...
新石器无人车入围《2025年度... 近日,新经济创投数据服务商IT桔子发布了《2025年度中国独角兽企业》系列榜单。新石器无人车凭借在自...
原创 张... 俗话说:坚持到底就是胜利!这句格言恰如其分地概括了清末民初实业家、政治家、教育家张謇的一生。张謇正是...
估值近500亿的美妆IPO要来... 近日,据外媒报道,Goodai Global已敲定11家国内外券商,将其纳入上市主承销商合格候选名单...
马斯克成为“股市发动机”,光伏... 1月23日,港股的光伏板块走势活跃,钧达股份(02865.HK)涨51.4%,信义光能(00968....
浦银经济带崛起混合A:2025... AI基金浦银经济带崛起混合A(519175)披露2025年四季报,第四季度基金利润5.58万元,加权...