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

超标量处理器设计5-指令集体系

1. 简介

指令集体系(ISA)是规定处理器的外在行为的一系列内容的统称,它包括基本数据类型,指令,寄存器,寻址模式,存储系统,中断,异常等内容。

2. 指令类型

  1. 算术指令(add/ xor)
  2. 访存指令(load/store)
  3. 分支指令(branch/jump/return)

3. 异常类型

  1. 处理器的外部事件引起的异常(interrupt)
  2. 虚拟地址到物理地址的转换引起的异常(page fault)
  3. 指令自身引起的错误(undefine, 用户态的非法指令,整数运算时产生溢出)
  4. 指令自身引起的异常(trap)

4. 异常处理

从处理器外部看起来,产生异常的指令之前的所有指令都已经完成了,而这条产生异常的指令及其之后的所有指令都不允许完成。处理器会跳转到对应的异常处理程序的入口地址,开始执行异常处理程序。
截屏2025-05-13 20.50.04.png

5. 小结

  1. 为啥以前用CISC,而现在常用RISC
    以前的内存贵,如果一条指令可以执行很多操作,那么程序总的指令条数就少,程序的代码量少,减少内存的占用。同时寄存器也贵,随着通用寄存器的个数增加,用于编码的rs/rd的位宽也增加,指令码的整体位宽也增加,当然就希望指令功能越复杂越好,从而减少内存占用。
    首先在CISC指令集中,指令的周期数长,并且发现80%的指令只有在20%的时间内被使用。同时,CISC中通用寄存器的个数较少,就会导致程序频繁访问内存,随着CPU和访存时间的差距越来越大,就希望减少内存访问,从而采用RISC.
  2. ARM指令集和MIPS指令集的区别
    ARM支持多种寻址方式,如寄存器间接寻址,变址寻址等,能方便地访问内存中的数据结构。MIPS寻址相对简单,有利于简化硬件设计。
    在立即数的处理上,ARM的立即数位宽有限,额外增加移位量来支持多个数据,但是仍然无法满足32bit的立即数,因此许多立即数需要通过访问存储器来实现,但是MIPS可以通过两条指令来实现该功能,立即数都是16bit,两条指令完成拼接。

相关文章:

  • 力扣Hot100(Java版本)
  • upload-labs通关笔记-第3关 文件上传之黑名单绕过
  • 深度Q网络(DQN)的基本概念
  • Mirror的多人连接管理及房间系统
  • 第六节第二部分:抽象类的应用-模板方法设计模式
  • 为什么企业需要加密软件?
  • 经典中的经典-比特币白皮书中文版
  • B站PWN教程笔记-10
  • 集成设备管理(IDM)
  • uart16550详细说明
  • 【Canda】常用命令+虚拟环境创建到选择
  • 操作系统导论——第28章 锁
  • 根据输入的数据渲染柱形图
  • 2.重建大师输入输出数据格式介绍
  • 电池自动点焊机:多领域电池制造的核心设备
  • MCU程序加密保护(一)闪存读写保护法 加密与解密
  • nginx配置反向代理支持CORS跨域请求
  • Leetcode (力扣)做题记录 hot100(49,136,169,20)
  • 关于vue 本地代理
  • Cookie、 Local Storage、 Session Storage三种客户端存储方式
  • 中国恒大:清盘人向香港高等法院申请撤回股份转让
  • 飙升至熔断,巴基斯坦股市两大股指收盘涨逾9%
  • 科普|“小”耳洞也会引发“大”疙瘩,如何治疗和预防?
  • “拼好假”的年轻人,今年有哪些旅游新玩法?
  • 中国科协发声:屡禁不止的奇葩论文再次敲响学风建设警钟
  • 上海杨浦:优秀“博主”购房最高可获200万补贴