【计算机组成原理】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

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

MySQL中的MVCC底层原理解读

《MySQL中的MVCC底层原理解读》本文详细介绍了MySQL中的多版本并发控制(MVCC)机制,包括版本链、ReadView以及在不同事务隔离级别下MVCC的工作原理,通过一个具体的示例演示了在可重... 目录简介ReadView版本链演示过程总结简介MVCC(Multi-Version Concurr

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用