1. 背景
为满足在移动设备应用领域中的节能需求,ARM于2011年首次提出了big.LITTLE技术。
big.LITTLE技术是一种使用两种不同ARM处理器的处理架构技术,即big处理器和LITTLE处理器,big处理器用于提供高性能,LITTLE处理器用于追求最大能效。big.LITTLE技术特别适用于功耗动态变化的手机、平板等移动设备领域;以手机为例,在游戏、高质量视频等高能耗场景,切换到big处理器进行处理,而对于文字输入、听音乐、待机等低能耗场景,切换到LITTLE处理器进行处理。
2. 原理
以最早的ARM big.LITTLE处理架构为例,讲述big.LITTLE技术的原理。
big.LITTLE技术的基本要求是使用的两种处理器采用的指令集相同。最早的ARM big.LITTLE处理架构由Cortex-A15和Cortex-A7处理器组成,两者支持相同的ARMv7-A指令集,相同的指令集保证了程序指令在两种处理器上连续执行。
下图是一个典型的big.LITTLE架构示例,其中big处理器是双核的Cortex-A15 cluster,LITTLE处理器是双核的Cortex-A7 cluster,每个cluster个各包含一个L2 Cache,连接到Cache Coherent Interconnect IP CCI-400进行Cache一致性管理;通过GIC-400中断控制器根据当前任务使用的处理器动态分发中断信号。