IDF:Intel官方解读SandyBridge微架构
Sandy Bridge处理器的处理流程发生了改变。前段微架构的处理顺序为:32K一级缓存>预译码>指令队列>译码器>分支预测单元。其中一级缓存为32KB的8路相连指令高速缓存,译码器部分包含4个译码器,每个时钟周期可处理器4条指令,指令队列处理方式包括微融合和宏融合,可将多条指令时间打包为一条“微操作”或将多对指令融合为一条复杂的“位操作”,译码流水线支持每个时钟周期16个字节。
此外,在前段处理器单元中还增加了一个译码微操作高速缓存,称之为0级(L0)指令高速缓存,代替了指令字节,对于大多数应用高达80%的命中率,此外,新架构还带来了更高的指令带宽和更低的延迟。译码高速缓存可以在每个时钟周期递送32字节,更多时钟周期可以保持每个周期4条指令,并能够缝合控制流程间的分支,从而达到更高的效能。
全新打造的分支预测单元则可以提供更高的预测能力、更有效的存储,并使相关操作保有更长的历史记录。译码微操作高速缓存让正常的前端休眠,译码一次而不是多次,本质上大夫减少分支-预测的失误率,从而减少了功耗并提升性能,使得Sandy Bridge的效率大大提升。Sandy Bridge新增了乱序群集,可以从前端接受微操作,当它们就绪时发送给执行单元,按照程序顺序引退,从而通过找到更多指令级的并行性来提高性能。
乱序群集通过物理寄存器文件(PRF)代替集中式的指令引退寄存器文件,为每项数据单独进行拷贝,在计算后不做数据转移,同时允许有效增加约33%的缓冲区大小。相比上代Nehalem架构,Sandy Bridge的缓冲区大小、项数均有提升,整数和浮点运算方式有本质的改变。
Sandy Bridge增加了Intel AVX指令集,使用了新的执行群集、存储器群集,可以扩展SSE浮点指令集到256bit的操作数,采用新的无损源语法和矢量运算,是面向低功耗的架构,矢量对于许多应用语言都是自然的数据类型,更宽的矢量和无损源语可用更少的指令详细描述更多的工作,使得现有工作得到有效扩展。Sandy Bridge的浮点运算能力大幅增加。AVX指令集可以利用2组128
bit执行栈,令执行群集重新使用现有数据路径达到双重使用的目的。
在存储器群集上,256KB的高速二级缓存在每个时钟周期可以进行16字节的加载和存储,双重使用现有链接使得加载、存储管线堆成,每个周期能进行2条16字节读取请求和1条16字节存储请求,并能通过内部时序处理器处理排队请求。
Sandy Bridge增强了加密指令运算量,在上代Westmere核心的酷睿产品中就引入了的AES指令集,带进位的加法运算量倍增,支持64bit被乘数和128bit乘积计算,对现有RSA二进制运算提速25%。