现代微处理器-90分钟指南

有了篇像样文章,虽然是翻译的。

翻译为学习之用,没有核对校正,觉得不准确有错误的地方请看原文

http://www.lighterra.com/papers/modernmicroprocessors/

 

 

现代微处理器

-90 分钟指南

By Jason Patterson , last updated Jan 2011 (orig Feb 2001)

 

 

 

 

 

 

一、          不仅仅兆赫 ( 频率 ) 2

二、          流水线和指令集并行 ... 2

三、          深度流水线 - 超级流水线 ... 4

四、          多发射 - 超标量 ... 4

五、          显式并行 -VLIW .. 6

六、          指令相关和延迟 ... 6

七、          分支和分支预测 ... 7

八、          带谓词的分支取消 ... 8

九、          指令调度,寄存器重命名和 OoO .. 8

十、          超智能的争论 ... 9

十一、          X86 是什么样的 ? . 10

十二、          线程 -SMT, 超线程和多核 ... 11

十三、          更多的核心或者更宽的核心 ... 13

十四、          数据并行 -SIMD 矢量指 ... 14

十五、          Caches 和内存架构 ... 15

十六、          Cache 冲突和相联度 ... 16

十七、          内存带宽和延迟 ... 18

 

你是一个本科生,作为学位的一部分学习过硬件/ 汇编课程,但那时几年前的事情,现在你并没有跟踪处理器设计的最新细节。

你可能还没有意识到最近一些关键的主题正在快速发展。

  • 流水线( 超标量,OoO,VLIW, 分支预测,预测)
  • 多核、同时多线程(SMT, 超线程)
  • SIMD 矢量指令集(MMX/SSE/AVC,AltiVec)
  • 缓存和内存架构

不用担心,这篇文章会让你快速跟上( 这些主题的发展) ,你将会像专家一样讨论顺序和乱序、超线程、多核和缓存优化.

准备好了,这篇文章很概括和切中要害没有空隙, 步伐非常的大.

一、   不仅仅兆赫( 频率)

首先必须明确的是时钟速度和处理器性能之间的不同,他们不是一回事。请看一下几年之前一些处理器的测试结果:

   

SPECint95

SPECfp95

195 MHz

MIPS R10000

11.0

17.0

400 MHz

Alpha 21164

12.3

17.2

300 MHz

UltraSPARC

12.1

15.5

300 MHz

Pentium-II

11.6

8.8

300 MHz

PowerPC G3

14.8

11.4

135 MHz

POWER2

6.2

17.6

虽然200 MHz MIPS R10000 300 MHz UltraSPARC  400 MHz Alpha 21164 时钟速度差了两倍,但是运行大多数程序的速度差不多相同,300 MHz Pentium-II 大多数程序速度和上面几个处理器差不多,但是浮点运算比如科学数字处理的速度大约只有的它们的一半, 对于同样300MhZA PowerPC G3 在通常的整型运算代码比其他处理器稍快,但浮点运算比前三名慢了很多.

另一个极端情况,只有135MHz IBM POWER2 浮点运算速度和400MHzAlpha21164 差不多,但是通用整型程序速度只有它的一边

这些应该怎么解释呢?显然不仅仅是时钟速度再起作用,更重要的是处理器在每个时钟周期内做了多少工作,这就引出下面的课题.

二、   流水线和指令集并行

指令在处理器内部一个接一个的执行,对吗? 这样让人很容易理解,但并不是真正发生的事情,事实上,从80 年代中期就不是这样子了,取而代之的是几条指令在同时执行某个部分

指令怎么执行的- 取指、解码、使用合适的功能单元执行、最终结果写到合适的位置。对于这种简单策略,每条执行花费4 个时钟周期(CPI=4)

Figure 1 – 顺序处理器指令流

现代处理器在流水线上重叠这些阶段,像一个生产线,一条执行正在执行,下一条正在解码,再下一条正在取指.

Figure 2 – 流水线处理器指令流

处理器每个周期执行一条指令,不用改变时钟速度获得4 倍速度提高.

从硬件角度来看,每个流水阶段由一些组合逻辑组成,可能访问寄存器组和几种高速缓存和内存。流水阶段由

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值