当前位置: 首页 > article >正文

【嵌入式学习】计算机自动运行小组件

目录

## 查找表

## 自动执行计算机

## 按照执行流程编写查找表数据

LOAD_A:OPCODE为0000

LOAD_B:OPCODE为0001

ADD: OPCODE为0010

STORE: OPCODE为0011

## 如何确定查找表的输入输出位数

## 给每一个执行步骤前加上取指操作,将数据填入查找表


## 查找表

自定义不同的输入输出的数据

如输入为0时,输出5;输入为1时,输出8

修改数据位数,可以通过少量开关控制大量的开关数据

## 自动执行计算机

添加计算机执行单元,使其按照顺序将相应的开关打开或者关闭

完整电路原理图:

## 按照执行流程编写查找表数据

由于各个指令的取指阶段全部相同,可以使用同一套编码

【相关阶段内容可查阅文章:【嵌入式学习】核心组件 - CPU总线架构 - 内部ALU -外部内存-CSDN博客】

LOAD_A:OPCODE为0000

【最后一条指令:为了对齐取指阶段需要用四条指令而补全的全零指令】

LOAD_B:OPCODE为0001

ADD: OPCODE为0010

STORE: OPCODE为0011

将以上四个阶段各个开关状态写成一个17位的数

最后在指令前补上ob表示二进制,再将空格部分全部删除即可

## 如何确定查找表的输入输出位数

①由于右侧有17个开关:确定输出位数位17

②由于任何一个操作码都对应8个操作步骤:确定输入数位为5的控制信号,4位确定操作码+1位确定操作步骤

## 给每一个执行步骤前加上取指操作,将数据填入查找表

## 操作码在哪里传入查询表

操作码从IR指令寄存器传入查询表,引入分裂器将操作码传入查询表

高两位:确定指令是哪一个

低三位:按顺序执行指令步骤【添加一个计数器自行加数】


http://www.kler.cn/a/596379.html

相关文章:

  • 基于大模型的甲状舌管囊肿全流程预测与临床方案研究报告
  • python学习笔记--实现简单的爬虫(一)
  • vlan路由间配置
  • Pytorch中的torch.utils.data.Dataset 类
  • TSL 和 SSL 是什么?它们有何关系?
  • 3.20-epoll 函数
  • 通俗易懂搞懂@RequestParam 和 @RequestBody
  • 2025年01月03日微创网络(杭州银行外包)前端面试
  • OpenCV Objdetect 模块使用指南
  • 尝试将相机采集图像流程封装成相机采图类
  • 微信小游戏:跳一跳,自动化操作
  • BlockChain.java
  • 西门子200smart之modbus_TCP(做从站与第三方设备)通讯
  • 【机器学习】手撕封装PCA——将高维数据映射到低维数据的过程
  • TPCTF 2025 web 复现
  • 【unordered_set和unordered_map】—— 我与C++的不解之缘(二十七)
  • wyq01
  • geant4的主要模块及其作用:
  • 【大模型算法工程】大模型应用工具化、忠诚度以及知识库场景下PDF双栏解析问题的讨论
  • Apache Flink技术原理深入解析:任务执行流程全景图