正在阅读:技术分析第20期:三星“双四核”特征分析技术分析第20期:三星“双四核”特征分析

2013-06-09 17:27 出处:PConline原创 作者:公斤 责任编辑:kuangweijun

  【PConline 评测】三星GALAXY S4(国际版)采用了三星最新的Exymos 5 Octa“双四核”处理器。该处理器采用28nm工艺制程,基于ARM的ARM big.LITTLE/Cortex A15架构(也就是所谓的大小核架构),号称是一种低功耗,高性能的移动处理器架构。三星这块处理器的特色是由两个四核处理器组成,分别为1.8GHz的A15架构处理器和1.2GHz的A7构架处理器。接下来我们一起对三星这颗“双四核”处理器架构进行解析。

双四核
三星“双四核”big.LITTLE架构特征分析

三星Exynos 5 Octa

  三星Exynos 5 Octa八核芯片其实是由两颗四核处理器封装在一起。据三星解释,高性能的处理器将用来处理更加复杂的运算,平时一般使用的时候则采用低性能的处理器,两者可以根据使用情况不同进行协同,因此也能有效降低功耗。

三星

  其中,Cortex-A7处理器是全新的架构,其结构和功能集与Cortex-A15处理器完全相同,不同这处在于,Cortex-A7处理器的微体系结构侧重于提供最佳能效,因此这两种处理器可在“大小核架构”big.LITTLE配置中协同工作,从而提供高性能与超低功耗的终极组合。单个Cortex-A7处理器的能源效率是ARM Cortex-A8处理器的5倍,性能提升50%,而尺寸仅为后者的五分之一。

big.LITTLE架构

  big.LITTLE处理的设计旨在为适当的作业分配恰当的处理器。Cortex-A15处理器是目前已开发的性能最高的低功耗ARM处理器,而Cortex-A7处理器是目前已开发的最节能的ARM应用程序处理器。可以利用Cortex-A15处理器的性能来承担繁重的工作负载,而Cortex-A7可以最有效地处理智能手机的大部分工作负载。这些操作包括操作系统活动、用户界面和其他持续运行、始终连接的任务。

大小核架构

  目前最常见的ARM架构是ARM Cortex A9。此架构的性能出色,最多支持4颗核心。然而,最早的4核心处理器Tegra 3从大规模出货起已有了一年多的时间,已经不能满足安卓的军备竞赛,在理论是上也不是高通Krait架构的对手。因此某些厂商开始使用目前性能最强的A15架构。比如三星推出的Exynos 5250,已经运用在了Chromebook 和Nexus 10上。

bigLITTLE

  但是A15架构的功耗实在太大,放在手机上单独使用显然是不合适的,发热严重和悲剧的续航将会是其噩梦,因此,big. Little 架构开始被关注应用。三星Exynos Octa是由两组四核处理器组成的,一组是四核Cortex A15,一组是四核Cortex A7,利用ARM最新发布的CCI-400连在一起工作。可以实现两组不同的四颗核心的切换,具体点就是在低强度任务下开启A7的四颗核心省电,在任务强度大的时候开启A15核心,用来取得强大的性能。

初期结构存在问题:任务转换

  big.LITTEL暂时来看是获取高性能和提高续航的一种较好的解决架构,但初期仍然会存在一些问题。那便是big little机制并不完美,a15和a7之间的异步,核心切换机制存在一定的繁琐和复杂,如何判断哪些时候用a15,什么时候用a7,用多少个a15,用多少个a7,在软件支持等方面的机制尚需时日优化。

任务转移
任务转移模式

  big.LITTLE的最初阶段,本是希望big core与LITTLE core数量相同。如果不是同样数量的CPU核心,那么在任务转移上无法迅速、简易地完成。要想在CPU核心之间进行任务转移,必须要将当前状态写入外部存储器(指下一级缓存)中。因此需要将切换的时间控制到最小。实际应用中虽然等待CPU核心响应需要消耗时间,但这段时间正在执行现有任务的核心依然在运行,所以延迟被遮盖住,不易察觉。

  CPU核心之间由于任务切换,停止处理所花费的时间仅仅是将要关闭的CPU核心的架构状态写入到缓存,然后等待原先关闭的CPU核心重新唤醒的时间。状态保存需要的时间依照CPU核心的频率不同,在600MHz时切换需要8.3μs。唤醒需要的时间相同。切换时的频率越低,需要的时间越长。根据ARM的解释,切换造成的停止响应时间最短可以控制在20μs左右。

  big.LITTLE的构成中,L2缓存都为同种核心使用,big与LITTLE之间不共享。这是为了将LITTLE核心的缓存做小,已达到省电的目的。正因如此,才会在任务在两种核心间切换时由于缓存的闪断与预热产生延迟时间,也正因此才在big.LITTLE上加入了隐蔽切换延迟的机构。这就可以解释有时候我们使用三星S4的时候,在一些大型软件游戏之间切换存在延迟的原因。

任务

  新的任务处理模式不需要整体将应用进行转移,而是根据任务对于CPU的负荷而进行判断,这是通过电压和频率的阀值而实现的。加入big核心的频率下降到一定的程度,其便会出发LITTLE核心进行接替。LITTLE向big的情况也就是反过来,LITTLE的频率提高到一个阈值,将触发切换至big核心。事实上,big.LITTLE MP是ARM提供的非对称多核心运行的模式,其需要对系统和软件方面进行改进,并不需要对硬件进行变更,要求对任务运行进行规划分配。这相对于任务之间的CPU核心整体转移,效率提高了不少。

解决发展方向:基于核心转换

  初初big.LITTLE架构出现时,big与LITTLE的切换开关只能做到基于簇(Cluster)的。例如四个CPU核心的Cortex-A15簇与四个CPU核心的Cortex-A7簇之间切换,以簇为单位的切换模式中,出现负荷高的任务时,四核Cortex-A7核心都会转换成高性能的Cortex-A15核心,导致效率低下。

CLUSTER
三种工作模式

  因而,后续的处理器如何调度将以CPU核心为单位切换,即是CPU Migration Use Model,当中这种基于核心的切换使得big.LITTLE获得显著提升。基于CPU核心的切换模式中,big簇的CPU核心与LITTLE簇中的CPU核心分别一对一地做为“一对”,以各“对”为单位切换。这样一来执行负荷高的任务时,必要数量的CPU核心切换至big核心,剩下的依然由LITTLE核心执行。可以比较效率地提高执行能力与保证低耗电。

总结

  big.LITTE架构为三星“双四核”所采用,这也是一种较为兼顾性能和功耗的解决方面。当然这种架构还是存在一个比较初级阶段,仍然有需要优化的空间,长远来看有不错的前景。

相关阅读:

技术分析第19期:5G WiFi无线连接解析

//mobile.pconline.com.cn/332/3329598.html

技术分析18期:背照式和堆栈式摄像头元件

//mobile.pconline.com.cn/331/3318701.html

技术分析17期:4G通信TD-LTE与FDD-LTE

//mobile.pconline.com.cn/331/3315556.html

技术分析16期:高通骁龙800/600处理器

//mobile.pconline.com.cn/326/3262256.html

  

为您推荐

加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多

手机论坛帖子排行

最高点击 最高回复 最新
最新资讯离线随时看 聊天吐槽赢奖品