ARM V2处理器微架构分析

ARM V2处理器微架构介绍

****   

简介

ARM V2的微架构是ARM处理器的基础,它包括了指令集、寄存器、控制单元等。这篇文章主要分析了ARM V2的一些微架构内容。如果您需要更详细的信息,可以参考这篇文章。

IFU

文章内容经过优化如下:1、Cycle预测两个分支的特性,在服务器系列N2/V2中实现难度较大。复杂度高,需平衡多种因素。

2、实现uOp Cache,这一选择在RISC指令集中并不常见。尽管N2/V2系列才刚实现此特性,但实际移动端早在A77就已经开始采用这个微架构。然而,今年发布的V3/N3却放弃了uOp Cache设计。这可能是出于对功耗的考虑,以及优化ICache和其他IFU方面的特性所带来的收益更为显著。相较于uOp Cache,牺牲面积和功耗以获得收益的做法似乎更为明智,因此N3系列选择了放弃uOp Cache。

3、新增TAGE预测器及扩大BTB容量,属于常规升级。参数化调整为主,细节算法优化尚不明确。

4、针对间接指令,我们设计了独立的预测器。然而,由于历史原因,N和V系列实际上是从A系列演变而来的。在经典的A76微架构中,一开始移动端和服务器端的区分并不明显,因此之前的间接预测器与移动端一样,都是混合使用的。

随着时间的推移,服务器端间接指令的比例逐渐增加,而移动端的一些微架构在确定为间接指令后,再查找非独立IBTB设计方案(以节约面积和功耗)可能不再适用于服务器端。即使进行解耦设计,也难以完全消除间接指令预测带来的延迟问题。

6、取指队列也从原来的16entry升级到现在的32entry。

Decode/Rename/Dispatch

Decode/Rename/Dispatch细节已优化,宽度提升至6,借助uOp Cache实现低延迟发出8 uOps。Decode Queue从16增至32,新增Rename Checkpoint及优化Rename Rebuild,提高效率。

Issue/Execute

"新增了2个单周期ALUs,扩展了Issue Queues,SX/MX从20增至22entries,VX从20增加至28entries等。"

LSU

1、增加DTLB数量至48entry。

2、DCache将PLRU替换算法改为RRIP,ARM常用的替换算法,NRU/PLRU/RRIP,L1 Cache使用PLRU更多,更重视L1 Cache的时候会牺牲更多资源在替换算法上。现在论文常讲的更"细粒度"的替换算法,在实际工程中见的更频繁了。例如初始化区分历史,将数据或者指令视作不等价等。

简单讲,有一种观点是不全部强调命中率,更强调整体的性能,举个简单的例子,有些数据不命中,对其miss系统损失的代价更高,即使依据频繁访问原则"它"应该被踢掉,但由于"它"地位更高,所以不将"它"替换掉。

或者有观点,识别数据本身的特性以及访问频率等情况综合去考量替换问题,这无疑会消耗更多的资源,对于路数更多的L2可能使用类似"细粒度"的替换算法收益更高。但现在ARM L1 Cache也开始逐步使用相对复杂的替换算法。其它就是一些常规的参数级别的升级,例如2LS,1LD,一些buffer深度给出了升级。

L2

8路网络,2MB和1MB延迟保持一致(与前版本相比)。新算法采用6-state RRIP。单个bank每2个时钟周期读写64B,共4个bank。

总结

arm的微架构给我的感觉是细节特别多,很多微小的特性都会抓取去优化,这是国内很多公司不具备的,国际一线的CPU公司,微架构方向的优化每年提升都放缓了,更多的是面向特定场景的优化,反而是工艺的提升以及SoC系统级微架构的提升对芯片系统的影响更大了。

当然国内对CPU微架构的设计依然相对落后一些,即使在"参数上"追上了国际水平,并且抛开一些生态问题,实际"面积""功耗"以及常规情况下的性能依旧有不少的提升空间。

 

-对此,您有什么看法见解?-

-欢迎在评论区留言探讨和分享。-

相关推荐
zz_lzh9 小时前
arm版AI牛马:armbian(rk3588)设备部署openclaw
arm开发·人工智能·arm
开发小程序的之朴11 小时前
基于Go语言的企业级CMS系统架构设计与性能分析——以AnQiCMS为例
开发语言·golang·系统架构
一切皆是因缘际会16 小时前
通用人工智能底层原理:从记忆结构视角解析大模型行为与意识涌现
人工智能·安全·ai·架构·系统架构
jeCA EURG19 小时前
docker离线安装及部署各类中间件(x86系统架构)
docker·中间件·系统架构
智者知已应修善业19 小时前
【用一片74LS139和一片74Ls00,设计带高电平有效使能输入端的3线-8线译码器】2023-10-16
驱动开发·经验分享·笔记·硬件架构·硬件工程
大迪deblog1 天前
系统架构师-数据库-数据库设计
数据库·oracle·系统架构
许彰午2 天前
从双11到某省政务平台:信息系统架构的本质思考
系统架构·政务
qq_435287922 天前
第7章 巫妖并起:中心化调度 vs 裸机硬件的架构对决?天庭与巫族的系统之争
架构·系统架构·天庭·巫族·中心化调度·裸机硬件·洪荒神话
Aaron15882 天前
27DR/47DR/67DR技术对比及应用分析
人工智能·算法·fpga开发·硬件架构·硬件工程·信息与通信·基带工程
v_JULY_v3 天前
ARM——用于长时序操作的优势奖励建模:采用三态标注策略(前进/后退/停滞),实现对相对优势的估计(含SARM详解)
arm·优势奖励建模·三态标注策略·相对优势的估计·sarm·阶段感知奖励建模·ra-bc