高级CPU设计

1、概念梳理

  • 缓存:在CPU中的小块RAM,用于存储批量指令。
  • 缓存命中:想要的数据已经在缓存里
  • 缓存未命中:想要的数据不在缓存里
  • 脏位:缓存里每块空间,有个特殊标记,叫脏位,用于检测缓存内的数据是否与RAM一致。
  • 多核处理器:一个CPU芯片中,有多个独立处理单元。

2、现代CPU如何提升性能:

早期通过加快晶体管速度,来提升CPU速度。但很快该方法到达了极限。

后来给CPU设计了专门除法电路+其他电路来做复杂操作:如游戏,视频解码

3、缓存:

为了不让CPU空等数据,在CPU内部设置了一小块内存,称为缓存,让RAM可以一次传输一批数据到CPU中。(不加缓存,CPU没位置放大量数据)

缓存也可以当临时空间,存一些中间值,适合长/复杂的运算。

空等原因:从RAM到CPU的数据传输有延迟(要通过总线,RAM还要时间找地址、取数据、配置、输出数据)。

扫描二维码关注公众号,回复: 16866100 查看本文章

4、缓存同步:

缓存同步一般发生在CPU缓存已满,但CPU仍需往缓存内输入数据。此时,被标记为脏位的数据会优先传输回RAM,腾出位置以防被覆盖,导致计算结果有误。

5、指令流水线:

作用:让取址→解码→执行三个步骤同时进行。并行执行指令,提升CPU性能。

原本需要3个时钟周期执行1个指令,现在只需要1个时钟周期。

设计难点:数据具有依赖性。

数据依赖性解决方法:

动态排序、乱序运行、预测分支(高端CPU)

6、一次性处理多条指令

7、同时运行多个指令流(多核CPU)

多核处理器:一个CPU芯片中,有多个独立处理单元。但因为它们整合紧密,可以共享一些资源。

8、超级计算机(多个CPU)

在一台计算机中,用无数个CPU,做怪兽级的复杂运算,如模拟宇宙形成。

文章出自:【计算机科学速成课】 笔记

猜你喜欢

转载自blog.csdn.net/hellow_xqs/article/details/131124414