文章目录

  • 1. 协处理器CP0
  • 2. CP0的实现

1. 协处理器CP0

对于MIPS32架构的4个协处理器,只进行CP0的实现

CP0内部只实现比较有用的7个寄存器

  • count(Register9) :处理器计数周期
  • Compare(Register11):定时中断控制
  • Status(Register12):处理器状态和控制寄存器
  • Cause(Register13):保存上一次异常原因
  • EPC(Register14):保存上一次异常的程序计数器
  • PRId(Register15):处理器标志和版本
  • Config(Register16):配置寄存器,设置CPU的参数

2. CP0的实现

  • int_i:6个外部硬件中断输入
  • count_o:Count寄存器的值
    ……
  • timer_int_o:是否有定时中断发生

CP0的连接类似HILO的处理

  • count每时钟周期加1
  • compare和status的结果
  • timer,定时器的中断
  • mfc0指令读取Status寄存器的值,存到$2,是0x10000401

【五级流水线CPU】—— 7. 协处理器访问指令(2条)相关推荐

  1. 【五级流水线CPU】—— 4. 移动操作指令(6条)

    文章目录 1. 分析 1.1 指令 1.2 数据通路图和系统结构图的改变 2. 代码修改 2.1 HI.LO寄存器的实现 2.2 修改译码阶段-ID模块 2.3 修改执行阶段-EX模块.EX/MEM模 ...

  2. 用scala写一个基本五级流水线CPU

    用scala写一个基本五级流水线CPU ctime:2020-06-26 20:09:48 +0900|1593169788 标签(空格分隔): 技术 硬件 最近学SpinaHDL,一直想写个什么东西 ...

  3. 【嵌入式开发】 ARM 汇编 (指令分类 | 伪指令 | 协处理器访问指令)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42408137  转载请著名出处 本博客相关文档下载 :  -- A ...

  4. 用scala写一个基本五级流水线CPU(二)解决数据冒险

    用scala写一个基本五级流水线CPU(二)解决数据冒险 ctime:2020-06-27 10:17:34 +0900|1593220654 标签(空格分隔): 技术 硬件 所谓数据冒险,即后面的指 ...

  5. [SystemVerilog] MIPS架构下的五级流水线CPU设计

    完整代码已上传 github 众所周知,MIPS体系的五级流水线CPU分为五个阶段:取指(IF).译码(ID).执行(EX).存储器(MEM).写回(WB).所以这根本算不上"设计" ...

  6. 五级流水线CPU的实现与改进

    实验报告二  流水线CPU 张涵诺 2019301894 实验三 流水线CPU(不考虑冒险) 实验要求: 在单周期CPU的基础上增加流水线寄存器,在不考虑冒险的前提下,实现一个能够执行下列指令集的流水 ...

  7. 手把手代码实现五级流水线CPU——第三篇:流水线控制逻辑

    系列文章目录 第一篇:初级顺序流水线 第二篇:分支预测流水线 文章目录 系列文章目录 一.控制逻辑 二.具体操作 1.判断暂停 2.控制冒险 3.跳转问题 4.实现 代码 一.控制逻辑 通过暂停和插入 ...

  8. 【五级流水线CPU】—— 6. 加载存储指令(14)

    文章目录 1. 初步 12条 1.1 分析 1.2 添加数据存储器RAM 1.3 修改最小SOPC 2.3 测试9 加载存储指令 2. load-use数据冒险 测试10 load-use数据冒险的解 ...

  9. 【五级流水线CPU】—— 3. 逻辑、移位与空指令 + 数据冒险RAM解决

    文章目录 1. 数据冒险RAM解决 分析 解决 2. 实现逻辑.移位指令 2.1 修改ID模块 2.2 修改EX模块 3. 测试 3.2 测试3 逻辑操作指令 3.2 测试4 移位操作指令 1. 数据 ...

最新文章

  1. 诺基亚:IMPACT智能管理平台已安全管理超过15亿部物联网设备
  2. abaqus二次开发python 建立集合,ABAQUS二次开发-Python脚本运行方式
  3. C++容器适配器之priority_queue
  4. 华为鸿蒙系统明年公测,华为终于发布新系统,即将与安卓系统告别,这批机型可以申请公测...
  5. linux ps mp,Linux中的命令ps(ps -aux)
  6. 四、物理优化(1)范式化
  7. java hdms_字段为clob类型,无法插入数据
  8. 点石成金-3-超市大亨
  9. NYNU_省赛选拔题(10)
  10. C#:判断某个对象有没有某个键的方法
  11. Lua调用c++ DLL 文件
  12. java换行(java换行代码)
  13. 程序猿周末副职业_早上,晚上和周末:我如何改变职业并成为程序员
  14. 读headFirst设计模式 - 装饰者模式
  15. 金融工程学(四):远期和期货的运用
  16. 怎么查询oracle归档模式,查看oracle数据库归档模式
  17. 企业对接Walmart平台常见报错
  18. OCA/OCP Oracle 数据库12c考试指南读书笔记:第6章: DML and Concurrency
  19. STM32踩坑1-SWD下载失败
  20. SQL语句实现查询SQL Server服务器名称和IP地址_MsSql

热门文章

  1. python面向对象(下)
  2. 对java:comp/env的研究(转)
  3. python知识点2--正则表达式【转载】
  4. 初识HTML5(一)
  5. 暑假快来了,又该何去何从
  6. 揭开伟大架构师的秘密
  7. [Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.
  8. Xcode 指定测试设备打包IPA
  9. 设置韩澳大利亚sinox弄winxp清除字体和界面美观
  10. 事务的隔离级别与锁的申请和释放