【计算机组成原理】Yy-z02模型机的硬布线控制器设计

2023-10-31 09:30

本文主要是介绍【计算机组成原理】Yy-z02模型机的硬布线控制器设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、Yy-z02模型机的系统结构

二、Yy-z02模型机的数据通路

三、Yy-z02模型机的指令执行

 四、Yy-z02模型机的硬布线控制器


一、Yy-z02模型机的系统结构

指令系统的实现  <---  构造它的硬件系统

硬件系统构造过程

  1. 分析指令格式和各指令的功能
  2. 确定部件连接方式(总线连接/直接连接)、CPU类型(单周期/多周期/流水线)
  3. 依据各条指令的功能,设计所需的功能部件、确定对应的控制信号
  4. 按既定方式进行连接,在部件之间建立数据通路

部件的连接方式

  • 直接链接:在所有需要传送数据的部件之间建立一条直接通路,比较适合CPU流水线设计中的串行连接结构(RISC、ARM)
  • 总线连接:所有部件都挂在总线上,部件之间通过总线来交换数据,结构简单,缺点是总线需要分时共享,指令的执行需要多周期(Yy-z02模型机)

总线连接的简单计算机系统结构

  • 系统总线:连接CPU、存储器、输入设备、输出设备 
  • CPU内部总线:连接CPU内部的专用寄存器、运算器(ALU、GR、暂存器)
  • CPU访问总线和输入输出设备:均需AR和DR完成

Yy-z02模型机的系统结构

  • 将外部数据总线DBCPU内部总线IB合二为一
  • 省略了数据寄存器DR

二、Yy-z02模型机的数据通路

存储器读/写操作只需要2个机器周期,运算器运算操作需要3个机器周期

三、Yy-z02模型机的指令执行

指令执行过程

取指令:以PC为地址读存储器,读出的指令写入IR,PC自增

  • M0:PC -> AR,PC+1 -> PC
  • M1:Mem[AR] -> IR

分析指令:控制指令译码器ID对IR进行译码,产生能识别指令的特定信息或信号

  • 指令的功能:对OP字段译码
  • 操作数地址:对寻址方式码MOD译码
  • 指令含几个字:由OP和MOD字段决定

执行指令:具体操作数取决于指令的功能与寻址方式

  • 取操作数:取指令剩余字;根据寻址方式计算EA
  • 执行操作:根据指令功能执行传送/计算/移位/转移等操作

Yy-z02模型机的两条经典指令

指令执行的流程图

 四、Yy-z02模型机的硬布线控制器

  • 原则一:微操作的先后顺序不得随意更改
  • 原则二:被控对象不同的微操作,尽量安排在一个节拍内完成
  • 原则三:占用时间较短的微操作,尽量安排在一个节拍内完成,并允许有先后顺序

硬布线控制器特点:

  • 指令越多,设计和实现就越复杂,因此一般用于RISC(精简指令集系统)
  • 如果扩充一条新指令,则控制器的设计就需要大改,因此扩充指令困难
  • 由于使用纯硬件实现控制,因此执行速度很快。微操作控制信号由组合逻辑电路即时产生
  • 一个CPU控制器,可以部分指令使用硬布线实现,部分指令(复杂指令)使用微程序控制实现

Yy-z02模型机的硬布线控制器设计步骤:

  1. 确定指令系统、分析指令功能
  2. 确定计算机系统结构
  3. 分析指令的执行过程及发送的微操作控制信号
  4. 综合与优化每个微操作控制信号的逻辑函数
  5. 逻辑电路实现

1. 确定指令系统:两条典型指令(ADD、JMP)

2. 确定计算机系统结构:Yy-z02模型机

3. 分析指令执行过程和发送的空信号序列

4. 综合与优化每个微操作控制信号的逻辑函数

5. 逻辑电路实现

这篇关于【计算机组成原理】Yy-z02模型机的硬布线控制器设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/314374

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4