ARM DynamIQ技术简介

1. 技术概念

        ARM于2017年3月发布了DynamIQ技术。DynamIQ技术是big.LITTLE技术的升级,两者均为ARM提出的异构处理技术,big.LITTLE技术已经成为了DynamIQ技术的组成部分。

        在big.LITTLE架构中,要求big处理器和LITTLE处理器位于不同的cluster内,big处理器cluster和LITTLE处理器cluster通过Cache Coherent Interconnect(CCI)进行数据传输,因此会不可避免地带来传输延迟,引起整体性能下降。与big.LITTLE技术不同,DynamIQ技术支持了将big处理器、LITTLE处理器和DynamIQ Shared Unit (DSU)集成在同一个cluster中,称为DynamIQ cluster,每个芯片可以集成多个DynamIQ cluster;在同一个cluster内,big处理器和LITTLE处理器的数据传输不必依赖big.LITTLE架构中的Cache Coherent Interconnect(CCI)硬件,而是通过DSU中的L3 Cache实现,从而简化了big处理器和LITTLE处理器间任务切换的数据共享复杂度,改善了传输延迟性能,提高了能效

2. DynamIQ技术优势

        big. LITTLE所有核心处于同簇下,各个核不能单独休眠、调整,中间存在着功耗的切换。     

        DyanmlQ每个簇内配置不同的核,每个核配置不同的电压和频率,再加上硬件的状态控制机制,每个核可以在关闭、休眠和工作状态时进行快速切换,在性能提升的同时,完美控制功耗。   

        与big.LITTLE技术相比,DynamIQ技术具有以下区别及相应的优势:

      (1)同1个DynamIQ cluster内支持同时集成big处理器和LITTLE处理器,最多集成8个不同种类的处理器,从而使得big处理器和LITTLE处理器的配置数量更加灵活;

      (2)同1个DynamIQ cluster内不同处理器的工作电压和频率可以通过DSU进行单独配置,有利于提高能效;

      (3)在保证高性能的同时,进一步提高了芯片能效

        下面是big.LITTLE system和DynamIQ big.LITTLE system的芯片架构对比图:

ARM DynamIQ技术简介_第1张图片

3. 原理

        最先支持DynamIQ技术的处理器是Cortex-A75和Cortex-A55,其中Cortex-A75作为big处理器,Cortex-A55作为LITTLE处理器。Cortex-A75、Cortex-A55和DSU组成了一个DynamIQ cluster,如下图所示。big处理器和LITTLE处理器的数量可以根据设计需求确定,从而极大增加了产品配置的灵活性,典型的配置见下图。

ARM DynamIQ技术简介_第2张图片

        在DynamIQ技术中,根据包含的big处理器和LITTLE处理器种类情况,DynamIQ cluster分为3种类型,即包含big处理器和LITTLE处理器、只包含LITTLE处理器和只包含big处理器。下面是包含big处理器和LITTLE处理器的DynamIQ big.LITTLE system以及只包含LITTLE处理器的DynamIQ system示意图。

ARM DynamIQ技术简介_第3张图片

        下面是包含2个DynamIQ cluster的芯片架构示意图。

ARM DynamIQ技术简介_第4张图片

4. 硬件支持

        DynamIQ技术的基本组成单元是DynamIQ cluster,DynamIQ cluster包括CPU和DSU。故为实现DynamIQ技术,在硬件方面应满足以下两项基本要求:

      (1)采用的CPU支持 Armv8.2-A架构

      (2)具备DynamIQ Shared Unit(DSU)硬件。

        下面是DSU的基本功能结构图。DSU被DynamIQ cluster内的所有CPU共享使用,由异步桥监视滤波器L3 Cache外设和接口总线功率管理单元等部分组成。

ARM DynamIQ技术简介_第5张图片

5. 软件支持

        在软件支持方面,DynamIQ技术需要Energy Aware Scheduling(EAS)调度算法的支持,有关EAS相关内容可参考文档:linux-6.2.8/Documentation/scheduler/sched-energy.rst

你可能感兴趣的:(arm开发)