热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

计算机组成原理——微指令格式

(截图来自MOOC平台华中科技大学计算机组成原理课程)微指令的设计应当要遵循如下的原则。根据以上原则,我们发现水平微指令的长度太长&#x

(截图来自MOOC平台华中科技大学计算机组成原理课程)

微指令的设计应当要遵循如下的原则。

根据以上原则,我们发现水平微指令的长度太长,控存容量大,如何去压缩微指令的长度?

途中给出了三条解决思路,我们一一分析。 

1.编码表示

在微指令的操作控制字段,有很多字位是相斥的,即在给出一个控制信号的同时,其他的控制信号都无法给出。如上图中的前七个out输出控制信号,以及最后三个运算控制信号。

呢么我们可以考虑将这些互斥的命令用编码方式表示,7个out字位可以用一个3位编码表示,一共8种状态,剩下的1个状态表示不给出任何控制信号。3个运算字位同样可以用2位编码表示。

这样一条微指令即可以缩短5位。

2.去掉下址字段

将下址字段去掉,改用一个自加器,每当前一条指令执行完,地址就+1,顺序执行下一条指令。

3.垂直型微指令

由水平型微指令的编码表可可以看到,表中置1的位是很少的,这说明水平型微指令的编码效率是很低的。 

根据单总线CPU架构的数据通路,我们可以将其分为以下三类:

寄存器传输,即操作数由源寄存器到目标寄存器,而寄存器的个数为8,可用3位编码表示,将这类指令命名为MOV;

运算类型,如INC类型是没有操作数的,而ADD只需要给出源寄存器的编号即可;

访存类型,给出是读还是写命令即可,用Mem表示。

除上所述,因为没有了判别字,我们需要Branch指令来表示顺序控制。

LOAD指令的垂直型微指令格式如下:

原本T1节拍中的一条水平微指令,需要用两条垂直微指令来实现。

MOV AR,PC 将(PC)送入AR;

MOV X,PC 将(PC)送入X。

T2节拍,通过LOAD微指令去读内存。

T3节拍,将(Z)送入PC。

T4节拍,将(DR)送入IR,同时执行跳转指令Branch P1,即P1置1。

…………

如此我们发现,垂直型微指令在使用时所需的数量大于水平型微指令,但相较于各种情况而言,整体所需要的控存还是比较小的。

垂直型微指令的问题在于原本可以同时给出的控制信号无法并行给出,并且还需要增加额外的逻辑。虽然其节省了容量,但在硬件大幅度降价的今天,垂直型微指令已经被淘汰。

(创作不易,请点赞收藏~)

 

 

 

 


推荐阅读
  • 非公版RTX 3080显卡的革新与亮点
    本文深入探讨了图形显卡的进化历程,重点介绍了非公版RTX 3080显卡的技术特点和创新设计。 ... [详细]
  • 深入解析JVM垃圾收集器
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践》第二版,详细探讨了JVM中不同类型的垃圾收集器及其工作原理。通过介绍各种垃圾收集器的特性和应用场景,帮助读者更好地理解和优化JVM内存管理。 ... [详细]
  • 探讨如何通过编程技术实现100个并发连接,解决线程创建顺序问题,并提供高效的并发测试方案。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 探索电路与系统的起源与发展
    本文回顾了电路与系统的发展历程,从电的早期发现到现代电子器件的应用。文章不仅涵盖了基础理论和关键发明,还探讨了这一学科对计算机、人工智能及物联网等领域的深远影响。 ... [详细]
  • FinOps 与 Serverless 的结合:破解云成本难题
    本文探讨了如何通过 FinOps 实践优化 Serverless 应用的成本管理,提出了首个 Serverless 函数总成本估计模型,并分享了多种有效的成本优化策略。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • MySQL 高性能实战教程
    本课程深入探讨 MySQL 的架构、性能调优、索引优化、查询优化及高可用性等关键领域。通过实际案例和详细讲解,帮助学员掌握提升 MySQL 数据库性能的方法与技巧。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • Netflix利用Druid实现高效实时数据分析
    本文探讨了全球领先的在线娱乐公司Netflix如何通过采用Apache Druid,实现了高效的数据采集、处理和实时分析,从而显著提升了用户体验和业务决策的准确性。文章详细介绍了Netflix在系统架构、数据摄取、管理和查询方面的实践,并展示了Druid在大规模数据处理中的卓越性能。 ... [详细]
  • 雨林木风 GHOST XP SP3 经典珍藏版 V2017.11
    雨林木风 GHOST XP SP3 经典珍藏版 V2017.11 ... [详细]
author-avatar
我是王美慧
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有