ARM N2微架构介绍

简介

之前在“ARM V2处理器微架构介绍”一文中介绍了面向服务器、云计算等应用的ARM V2处理器微架构,V系列具有更强性能,N系列强调性能和功耗等方向的平衡,本文就将介绍一下ARM N2处理器微架构相比较前代的一些提升。尽管ARM还具备一代N1/V1的服务器端处理器,但严格意义讲N2是ARM相对成熟的第一代服务器端处理器IP。

前端Front-End

前端的设计相比较前代可以说是巨大提升,预测和取指依然是解耦设计,本代CPU对预测器做了重点的升级。

预测器方面,原来的8instrs/cycle提升为2x8instrs/cycle,每个周期可以处理2个分支,相对应的分支执行也是每个周期处理2个分支。这个特性属于一个相对复杂的实现,AMD的Zen4 Epyc也是同样实现了这个特性,具体的实现方案没有查到更多的资料,最近亦安有进展会写文章讨论一下。

BTB方面,NanoBTB是由原来的16 entries提升到64 entries,早期的快速重定向能力有比较大的提升。Main BTB的大小由6K entries提升到8K entries,并且延迟更低,分支目标tagged关联了上下文以强化安全问题。

ICache是64KB,4路组相联,依然是VIPT组织结构,校验方式是奇偶,Cache line是64bytes。值得一提的是Mop Cache,这个是首次在服务器端使用该特性,在手机端是A77开始具有该特性,主要为了绕过decode快速进入下一个模块。具有1536 entries,4-way skewed组相联,VIVT的组织结构,Cache替换算法PLRU,公开资料显示Mop Cache命中率有85%,命中率还不错。不过不管是服务器还是移动端,这个特性都被舍弃了,服务器是N3/V3放弃的,移动端应该是X4放弃的。

Fetch Queue从原来的12 entries提升到16 entries,decode宽度4(ICache)5(Mop Cache)

Mid-Core & Back-End

rename宽度由4instrs提升到5instrs,增加了checkpointing,ROB也由128提升到160,ALU从3提升到4,降低了分支预测错误惩罚,从11cycle降到10cycle。

L1 Dcache 64KB,4-way组相联,使用VIPT的组织方式,校验方式是ECC,替换算法是PLRU,后面一代的N3改为RRIP。具有2-LD/ST和1-LD。L2的带宽翻倍,变为64B读+64B写。预取引擎也有所优化,例如Temporal预取器可以预取任意的、重复的访问模式,以加速使用时间流的工作负载。

关于CCS

N2的一个其它重点就是加入CCS,对用户而言搭建复杂系统更加便捷,不过这不是本文的重点,简单描述。互联系统升级为CMN700,各种连接口实际都升级到下一代,但互联属于核心关键技术。

总结

ARM N2还是属于比较经典的一代CPU,不少的公司都在使用,其很多微架构的设计都比较有趣,很多特新大家也可以参考相关的论文研究。

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值