新闻中心

EEPW首页 > 专题 > ARM的A/R/M设计目标:适合的处理器来执行对应的任务

ARM的A/R/M设计目标:适合的处理器来执行对应的任务

作者:Peter Greenhalgh时间:2016-07-28来源:电子产品世界收藏
编者按:ARM认为应该使用适合的处理器来执行对应的任务。本文介绍了每个不同的处理器如何体现这一设计理念。

  *73是继今年72之后的旗舰级的产品,之前旗舰级从15到Cortex-A57到Cortex-A72都是Austin(奥斯汀)架构,Cortex-A73是采用了和Cortex-A12、Cortex-A17一样的Sofia(索非亚)架构,这是为什么,是否意味着Austin到了性能极限?

本文引用地址:http://www.eepw.com.cn/article/201607/294692.htm

  其实,有很多设计中心,比如在奥斯汀、索非亚,还有剑桥,还有法国,还有其他地方很多的设计中心。处理器这块我们确实是有一些分工的,所有的小核都是在剑桥设计的,在大核这边,我们是由奥斯汀和索非亚两个团队分别设计的,他们之间有很多共享的团队交流,所以不存在极限这一说法。

  * 未来Cortex-A73在10nm的工艺下会突破3GHz吗?

  理论上是没有问题的。但是我们现在看到客户做到2G,至于客户会不会从2G一直往上提升到3G,甚至超过3G,还是要看客户的设计。

  * 对于数据中心,如何看待的?

  实际上一直有在做,海思、NXP等有非常多基于Cortex-A72的产品出来。在数据中心这块更多地是看计算密度。在服务器里,在流水线的升级里面,能够放更多处理能力的核。此外,数据中心考虑更多的是功耗,在同样的功耗范围内ARM有更多的核和更好的处理能力。在数据中心,现在可以做到48核左右。

  以前在数据中心有准入门槛,或者是很困难的,主要困难在软件即生态系统这部分。现在ARM在服务器、软件上的生产已经非常成熟了,现在这个限制已经不存在了。

  * 对于数据中心,现在Cortex-A72比Cortex-A73更有优势?

  答案是肯定的。因为首先Cortex-A73没有AMBA5 CHI,不支持更多的Cluster。还有一点是Cortex-A73里面不支持ECC,ECC在服务器的标准里面,在可靠性方面也是非常重要的。

关注实时

  处理器从架构上看也有非常丰富的指令集的,包括处理器浮点运算SIMD(NEON)。处理器现在只是支持AArch32,并没有支持AArch64。Cortex-R处理器和Cortex-A处理器不一样,并没有极致地追求单线程性能,而是关注实时性,以及能够执行、完成安全性的一些特定功能。

  Cortex-R处理器主要集中在代码密度的优化上。在Cortex-R里有很大一部分性能跟I/O以及flash相关,在这方面也是做了很多的优化。同时,Cortex-R也支持紧耦合的缓存,这对实时性也非常有帮助。

  跟Cortex-A处理器的很多应用不一样,Cortex-R处理器侧重于实时性以及安全性,更多地应用在IoT、基带的调制解码器、存储、汽车以及工业控制等方面。Cortex-R的确定性执行、实时性以及安全性的特征,都非常适合这些领域。

  Cortex-R8是今年(2016年)发布的一款处理器R8(图5),相信不久之后会看到基于Cortex-R8的基带芯片。

  跟Cortex-A系列不同的是,Cortex-R有很多针对存储的优化。比如TCM的,在外设接口这边,有AXI-S和AXI-M接口以及低延迟外设接口,以及低延时的内存接口。

  Cortex-R8还支持紧耦合缓存。TCM对确定性的执行有非常大的帮助的,也保证了实时性。

  Cortex-R8可以支持到4核的,它是超标量乱序执行的处理器,它有11阶流水线,并且有浮点运算单元,支持单精度和双精度的浮点。和Cortex-A不太一样的是,Cortex-R集中在确定性的执行以及实时性方面。

及热门问题

  跟Cortex-A和R不一样的是,M系列主要是面向代码密度以及低功耗的微控制器市场(如图7),所以并没有像Cortex-A和R那样有丰富的指令集。所有系列的处理器都是面向最低功耗的,都是按序完成的流水线。处理器也有非常丰富的可配置性,有些处理器可选浮点运算单元。作为可选,能够达到好的功耗以及好的面积。

  Cortex-M系列的处理器可以实现超高的能效比,应用于超低功耗的IoT的MCU,也可以用于移动市场sensor hub这样需要很高性能的市场。

  以Cortex-M7为例,Cortex-M7甚至比Cortex-R有更丰富的接口,所有刚才指的这些都是可配置的。如果你需要,就可以把它放到那里,不需要就可以把它移掉,像一些TCM等配件。也可以根据需求做到最优化的Cortex-M的处理器。

  Cortex-M7是M系列里性能最高的处理器(如图7),也支持缓存的TCM等。当然也可以把这些去掉,得到更好的面积和功耗。Cortex-M系列也支持比较高的安全性功能,这边可以看到ECC就是来支持安全性功能。

  一些热点问题如下。

  * Cortex-M7比Cortex-M4功能强多少?

  实际上,Cortex-M7比Cortex-M4的性能有大概40%的提升。DSP是双倍的性能提升。

  * 很多MCU厂商认为今年的市场Cortex-M4会是主流,从ARM角度看,Cortex-M7什么时候会成熟?

  ARM认为现在Cortex-M主要还是在中低端的市场,但我们看到市场会对DSP有很高的需求,当有高性能需求的时候,Cortex-M7市场会有一个比较大的增长,比如高频音频和视频市场的增长。

A/R/M热门问题

  *A系列(SW managed interrupts)和R系列(Determinisitic SW managed)是属于软件的关联的部分,M系列(HW managed interrupt)是面向硬件的管理,为什么会有这样的差别?

  因为Cortex-A的软件管理意味着你在操作系统的层面上更好的管理,你可以管理这些终端的硬件,Cortex-M系列所有这些事情都是自动完成的。

  *经过这么多年,ARM架构一直在提升性能,降低功耗,架构的每次创新功能都持续的改进,未来持续的创新最高级别能到什么程度?可能需要几年?这个架构会有什么新的改变?

  目前还没有看到这样一个极限。从生产工厂这块来看,在未来5年还是在不断演进的,它的工艺目前也是从10nm到7nm不断的演进。借助这样的工艺条件,我们的处理器也可以有更多的空间提升它的性能,做更多的优化。从另外一个角度来讲,我们也可以看到会有一些新的功能、新的要求在里面,前面已经讲到了,在架构这方面,我们从ARMv8.0到8.1以及8.2,以及还会看到更多的架构上的演进。另外还有系统上的优化,其实ARM有很多系统级的优化,所以多方面综合来看,还有很多事情可以做,我们也会一直持续地做创新以及优化。

  *ARM有很多产品,定义一个IP的时候是基于什么考虑?

  一个原因是市场扩展的需求,例如以前看到了64位市场是很大;另外面向新市场,比如网络市场、企业级市场。再有,从功能角度也会有一些提升,要看这个提升是较大还是较小,会据此决定是否需要新的设计。还有一个原因是在性能方面的提升,根据这个市场上的用户体验是否对这个性能有较大的需求,会在性能上做一些优化。还有就是在新特性上,如果有比较多的新特征,ARM会针对新特性做新的处理器,举个例子,面向ADAS市场,它对安全性的需求非常高,需要满足ASL标准,为了支持更多核的方式,ARM也会有一些新的设计。

小结

  ARM处理器的主要目的就是对正确的任务设计正确的处理器,在每个架构里面都有一些独特的处理器来覆盖这样的一些市场。(注:本文根据ARM Tech Day上录音整理,未经讲演者确认。该活动由ARM公司主办,2016年6月16日,北京)

本文来源于中国科技期刊《电子产品世界》2016年第7期第30页,欢迎您写论文时引用,并注明出处。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭