• 苏流郁宓
    2022-08-15 来自湖北
    在硬件层面,为提高流水线效率。按照同时钟周期原则,假如ac为一组指令,c的运算必须依赖a的结果,那可以把同样周期的bd插入ac中组为abcd指令,a指令下去运算,紧接着b指令也下去运算,这样表面上c需要a的等待时间,但等待时间途中b指令也忙着,相当于cpu核没有空闲,利用指令b指令的时间间隙,a指令完成执行,结果返回给c,c执行差不多,b指令完成执行结果就可以立马返回给d指令执行了 cpu核执行指令没有空闲时间,乱序执行,这是通过增加晶体管来完成的! 这可以和今天的流水线执行方式进行互补的啊

    作者回复: 是的

    
    5
  • 苏流郁宓
    2022-08-15 来自湖北
    cpu流水线下,软硬件中断导致须停下手头工作来处理中断问题,频繁的软硬件中断会降低cpu工作效率(比如正在运行的数据需要来回存取读写),在明面上如用户一下打开多个app容易卡住,或者浏览器打开多个网页…… 解决方法,如浏览器给定同时允许打开网页的最大数,或者app中也设软件cache,减少因网络即时数据存储问题导致的中断量加大,比如,优化软件结构。能就近找到的数据不要让cpu遍历去找! 在cpu层面,尽量将宽度一致的数据/指令列为一组,减少内存不该有的缺页异常(该有的还得有)!

    作者回复: 是的

    
    2
  • 枫落
    2022-09-04 来自湖北
    空泡是什么指令呢?这个时候流水线是也处于忙状态吗?

    作者回复: 是的

    
    
  • +1
    2022-08-21 来自湖北
    不太理解在什么情况下需要在访存这个阶段从存储器中读取数据,不是能在执行阶段通过寄存器地址完成么?另外存储器和寄存器有什么区别呢?然后为何还有给pc地址加4的情况,不是在预读取的时候就完成了么

    作者回复: 外存储器一般 是内存

    共 2 条评论
    
  • 青玉白露
    2022-08-17 来自湖北
    精彩!锁、内存屏障等概念其实说到底就是基于访存阶段进行的特性化操作,还有很多的东西需要妈那美女消化。

    作者回复: 哈哈

    
    