【计算机硬件系统设计(华科)——MIPS CPU(Logisim 实现)】

  • 前言
  • 定长指令周期三级时序CPU
    • 控制器设计
      • 时序部件设计
      • 控制信号设计
    • 译码器设计
  • 变长指令周期三级时序CPU
    • 控制器设计
      • 时序部件设计
      • 控制信号设计
  • 中断处理机制
    • 中断控制信号设计
    • 控制器设计
      • 时序部件设计
      • 控制信号设计
  • 总结

前言

前文已经介绍了运算器、存储器以及单周期CPU的设计,本章将继续对三级时序(包括定长指令周期与变长指令周期)CPU进行分析与展示。


定长指令周期三级时序CPU

三级时序是指时序部件信号由周期、节拍和工作脉冲三级时序组成,为指令执行产生时序信号,控制部件根据组合条件形成相应的控制逻辑,再与时序信号组合产生所需的控制信号。


控制器设计

时序部件设计

设计时序发生器以循环产生周期电位、节拍电位,控制时序信号的产生。

根据指令周期流程图可将一条指令执行的周期划分为取指周期、计算周期(计算数据在存储器中的地址)以及执行周期。以所需节拍最多的取指周期为准,共需要3(3个周期)*4(4个节拍)=12个状态。

控制信号设计


使用硬布线设计方式设计控制器,通过时序发生器产生的时序信号,以及指令译码器根据具体指令形成的指令信号,设计简单的组合逻辑电路以生成控制信号。

由状态机产生状态信号,进行状态转换,时序发生器根据状态产生节拍信号,节拍信号与指令译码结果通过组合逻辑单元产生控制信号。


译码器设计



变长指令周期三级时序CPU

在定长指令周期三级时序设计中,有部分节拍处于空操作,造成机器性能的浪费。因此采用变长指令周期三级时序设计,使得机器周期和节拍数可以调整,减少空操作周期,以提升机器性能。


控制器设计

时序部件设计

控制信号设计

变长指令周期的设计主要在于时序部件的设计,根据指令译码信号确定具体指令的运行周期。



中断处理机制

在MIPS中断处理机制设计中,需要设计中断请求生成逻辑,当按动按键时可以产生对应的中断信号送CPU进行处理,不同的中断请求优先级不同,因此需要设计中断优先级仲裁逻辑,在存在多个中断请求时根据优先级先后送入CPU进行操作。设计中断响应周期,在指令执行完成到取指周期的空档中,需要插入一个判断是否存在中断请求的周期,当存在中断请求时转入中断响应周期,进行中断现场的保护并将中断服务程序地址送入PC寄存器,根据中断响应周期的设计增加对应的寄存器以及逻辑电路。在指令与控制信号设计中,应当增加开中断、关中断信号,以及中断返回指令。

分析单级中断的响应过程,在单级中断中,已在执行的中断程序不可被其他中断打断。当一条指令执行结束后进行判断,当存在中断请求时,进入中断响应阶段。首先进行关中断操作,防止被其他中断打断,其次将下一条指令地址当作断点进行保护,写入中断寄存器EPC,之后通过中断信号的识别将对应服务程序的地址写入PC开始执行中断服务程序。在执行前首先进行现场保护,对将会被中断程序使用的寄存器依次进行压栈防止数据丢失,再执行程序,执行结束后再进行现场恢复操作,将栈中数据依次写回寄存器,最后执行中断返回指令“ERET”,开中断,并将断点程序EPC写回PC寄存器,最后清除当前中断请求信号。


中断控制信号设计


控制器设计

时序部件设计

控制信号设计

设计同上。



总结

文章描述不尽详细,仅供各位读者进行设计参考。如果问题欢迎指正,共同探讨,相互学习。

祝各位端午安康,暑假快乐!

【计算机硬件系统设计(华科)——三级时序 CPU「包含中断处理」(Logisim 实现)】相关推荐

  1. 【计算机硬件系统设计(华科)——现代时序 CPU(Logisim 实现)】

    [计算机硬件系统设计(华科)--现代时序 CPU(Logisim 实现)] 前言 变长指令周期现代时序CPU 指令译码器设计 控制器设计 硬布线控制器设计 微程序控制器设计 微指令设计 中断处理机制 ...

  2. 【计算机硬件系统设计(华科)——单周期MIPS CPU(Logisim 实现)】

    计算机硬件系统设计(华科)--单周期MIPS CPU 设计(单周期.流水线)(Logisim 实现) 前言 单周期 CPU 设计 数据通路 控制器设计 MIPS 指令流水线设计 理想流水线 流水接口部 ...

  3. Educoder头歌单总线CPU设计(定长指令周期3级时序)(HUST)谭志虎 华中科技大学计算机组成原理实验计算机硬件系统设计

    .crci文件获取在下方 本实训项目帮助学生理解定长指令周期三级时序系统的设计,能利用该时序构造硬布线控制器,支持5条典型MIPS指令在单总线CPU上运行,最终CPU能运行内存冒泡排序. 定长指令周期 ...

  4. 计算机中央处理器相关知识,软考程序员考点计算机硬件基础知识之中央处理器CPU...

    下面希赛小编为大家整理的软考程序员考点计算机硬件基础知识之中央处理器CPU,希望能帮助学友们.具体内容如下: 中央处理器 中央处理器(CPU,Central Processing Unit)是一块超大 ...

  5. 将线程pid转成16进制_硬件资讯 | AMD 线程撕裂者 5000 系 CPU 将包含 16 核版本

    新闻转自IT之家-信鸽 1月3日消息 近日,AMD 锐龙 Clock Tuner 工具的开发者 @1usmus 发布了一条加密代码,表示解密以后就可以获得 AMD 线程撕裂者 5000 系 CPU 的 ...

  6. 深度剖析「圈组」消息系统设计 | 「圈组」技术系列文章

    导读: 网易云信新晋的 IM 顶流产品「圈组」出道后获取到了极大的关注,很多云信的客户在接入的同时对于「圈组」的底层技术细节和原理也非常关注,为此,我们决定推出云信「圈组」相关的系列技术文章,分享网易 ...

  7. 计算机要执行一条指令,cpu所涉及的操作应该包括下列的,计算机基础题模拟试题「附答案」...

    一.单选题 1.计算机中能直接被CPU存取的信息是存放在___A____ 中. A.内存 B.光盘 C.硬盘 D.软盘 2.D/A转换器的功能是将___A_______. A.数字量转换为模拟量 B. ...

  8. 【原创】系统设计之系统时序图表达

    系统设计之系统时序表达 前段时间总结了需求分析中的用例分析, 虽然阐述了常规的需求分析基本过程,但是由于需求分析面对的是人, 面对不同人的性格,不同人的做事方式,会给我们的需求分析带来很多不定的因素, ...

  9. 计算机一级wps选择题必背知识点,2017全国计算机一级《WPS》复习题「附答案」...

    2017全国计算机一级<WPS>复习题「附答案」 所谓成功,就是在平凡中做出不平凡的坚持.以下是百分网小编搜索整理的一份全国计算机一级<WPS>复习题[附答案],供参考练习,希 ...

最新文章

  1. srs audio sandbox 注册机_Windows10自带 Sandbox软件测试必备技巧
  2. css实现文字超出显示省略号...
  3. ssh项目部署到weblogic注意事项
  4. DispatcherServlet代码分析及运行过程
  5. 连不上 GitHub 的朝鲜,也开发出了人脸识别技术
  6. Warning: mysqli::__construct(): php_network_getaddresses: getaddrinfo failed:
  7. [读书笔记]TCP/IP详解V1读书笔记-1
  8. warning: function declaration isn’t a prototype(函数声明不是原型)的解决办法
  9. java smp_什么是SMP系统
  10. js 操作Listbox js 获取Listbox选择的值的代码
  11. 计算机系统建模与仿真论文,计算机模拟 仿真论文.doc
  12. 小迪渗透测试学习笔记(一)基础入门-概念名词
  13. matlab erf erfi,误差函数
  14. 您已购买此 App 内购买项目。此项目将免费恢复。This In-App purchase has already been bought.It will be restored for free.
  15. C语言中三目运算符的结合性问题
  16. 下列叙述中正确的是计算机课,大学计算机课程练习题(期末)
  17. 视觉检测设计与实践答题卡检测实验报告
  18. RDS Mysql Single-AZ和Multi-AZ性能差异
  19. 灵魂拷问:如何检查Java数组中是否包含某个值 ?
  20. JZOJ ???? Or

热门文章

  1. c++windows+yolov5-6.2+openvino模型部署超详细
  2. 【渗透测试笔记】之【内网渗透——Windows系统散列值获取与防范】
  3. iphone怎么更新9.0系统更新服务器,iOS 9 推送前你必须知道的几件事:iOS 9 升级指南...
  4. SQL注入-攻入Apple ID钓鱼网站实录
  5. 7. subprocess
  6. iphone震动反馈怎么设置,如何在iPhone上禁用触觉反馈振动 | MOS86
  7. 地理信息系统复习摘要
  8. DDR4 的VTT电流估算,DDR稳压器选型
  9. 《LabVIEW数据采集》视频教程第18集:数值型数据—无符号整形数
  10. 12、TCP、IP体系---ICMP与DHCP协议