[REPRINT-YB] - ARM DynamIQ Shared Unit(DSU)的作用与构成解析

ARM DynamIQ Shared Unit(DSU)的作用与构成解析

一、DSU的核心作用​

ARM DynamIQ Shared Unit(DSU)是DynamIQ架构的核心组件,旨在解决多核处理器(尤其是异构多核)中的资源共享、一致性维护、功耗优化及系统集成问题,为高性能、低功耗的异构计算提供基础支撑。其核心作用可概括为以下几点:

1. 管理共享资源,降低内存延迟​

DSU的核心功能是提供共享L3缓存(统一内存池),供同一DynamIQ集群内的所有核心(包括大核与小核)共享。与big.LITTLE架构中“大核/小核分属不同集群、各自拥有独立L2缓存”的设计不同,DynamIQ集群内的核心(如Cortex-A76大核与Cortex-A55小核)可通过DSU的L3缓存实现快速数据共享,无需跨集群的一致性总线(如CCI)。这种设计大幅降低了跨核数据交换的延迟,简化了任务迁移(如大核与小核之间的负载均衡)的复杂度。 

2. 维护缓存一致性,确保数据完整性​

DSU通过嗅探控制单元(SCU)实现集群内的缓存一致性。SCU监控所有核心的L1/L2缓存与L3缓存之间的数据访问,自动调整窥探过滤器(每个L3缓存切片对应一个),确保当某个核心修改数据时,其他核心的缓存中对应的旧数据被及时失效或更新。这种机制避免了数据不一致的问题,尤其适用于多核并行计算场景(如AI推理、图形处理)。 

3. 支持灵活的电源管理,优化能效​

DSU集成了电源策略单元(PPU),实现对集群内核心、L3缓存及内部传输机制的自主电源管理。其支持的功能包括:

    • 动态电压频率缩放(DVFS):每个核心可独立调整电压与频率(如大核在高负载时运行在高频,小核在低负载时运行在低频),平衡性能与功耗;

    • 电源域划分:将核心与L3缓存划分为多个电源域,支持“保留状态”(Retention State)“关闭”(Power-Gating)部分不使用的资源(如L3缓存的某个切片),减少静态功耗;

    • Quick Nap功能:当L3缓存使用率较低时,通过降低缓存数据RAM的刷新频率,进一步降低动态功耗。

4. 提供系统接口,简化SoC集成​

DSU作为SoC的中枢接口,连接了CPU核心、内存控制器、外设及调试组件。其支持的接口包括:

    • 一致性主总线(如AMBA 5 CHI):用于连接需要缓存一致性的主设备(如CPU、加速器);

    • 非一致性主总线(如AMBA AXI5):用于连接不需要缓存一致性的外设(如USB、UART);

    • 加速器一致性端口(ACP):为需要与集群保持I/O一致性的非缓存主设备(如GPU、网络加速器)提供一致性访问;

    • 实用总线:为PPU、调试组件等系统组件提供编程接口。

5. 支持调试与跟踪,提升开发效率​

DSU集成了调试块(DebugBlock),支持掉电调试(即使在SoC断电时也能访问调试信息),并与CoreSight架构集成,提供嵌入式跟踪扩展(ETE)、交叉触发接口(CTI)等功能,帮助开发人员快速定位多核系统中的性能瓶颈与故障。 

二、DSU的主要构成​

DSU的构成围绕“共享资源管理、一致性维护、电源优化”三大核心功能,主要包括以下模块:

1. 共享L3缓存系统​

  • L3缓存:DSU的核心组件,是同一DynamIQ集群内所有核心的统一共享内存池。其容量可配置(如DSU-120支持1MB至4MB),采用16路组相联(或12路,取决于容量)的组织形式,64字节缓存行,支持缓存分区(符合MPAM架构),可将L3缓存划分为多个独立区域,分配给不同核心或任务使用。

  • 缓存切片:L3缓存可划分为多个切片(如DSU-120支持最多8个切片),每个切片对应一个窥探过滤器,优化一致性维护操作(如减少总线竞争),并支持基于切片的电源关闭(当切片未使用时,关闭其电源以节省功耗)。

  • ECC保护:L3缓存RAM实例支持纠错码(ECC),检测并纠正单比特错误,提升系统的可靠性(尤其适用于汽车、工业等对可靠性要求高的场景)。

2. 嗅探控制单元(SCU)​

SCU是DSU中负责缓存一致性维护的核心模块,其主要功能包括:

  • 一致性监控:监控所有核心的L1/L2缓存与L3缓存之间的数据访问,确保数据一致性;

  • 窥探过滤:通过每个L3缓存切片的自动调整大小的窥探过滤器,减少不必要的总线窥探(如避免对未修改数据的重复检查),提升一致性维护的效率;

  • 跨集群一致性(可选):部分DSU型号(如DSU-120)支持跨集群的一致性,可将多个DynamIQ集群连接成一个更大的集群,实现跨集群的缓存一致性(适用于多集群SoC设计)。

3. 电源策略单元(PPU)​

PPU是DSU中负责电源管理的核心模块,其主要功能包括:

  • 自主电源决策:根据核心的负载情况(如CPU利用率),自动调整核心的电压与频率(DVFS),或关闭不使用的核心(如小核在低负载时进入睡眠状态);

  • 电源域管理:将集群内的资源(如核心、L3缓存切片)划分为多个电源域,每个电源域可独立控制电源状态(如开启、关闭、保留),实现细粒度的功耗优化;

  • Quick Nap功能:当L3缓存使用率较低时,降低缓存数据RAM的刷新频率,减少动态功耗(该功能需Energy Aware Scheduling调度算法支持)。

4. 内部传输机制​

DSU内置内部传输机制,负责协调集群内所有组件(核心、L3缓存、PPU、外设)之间的通信。其传输拓扑由核心数量和L3缓存切片数量决定,确保数据传输的高效性与低延迟。例如,当核心数量增加时,内部传输机制会自动调整拓扑,避免数据传输瓶颈。 

5. 接口单元​

DSU通过多种接口连接SoC中的其他组件,主要包括:

  • 一致性主总线:如AMBA 5 CHI Issue E(256位),支持连接需要缓存一致性的主设备(如CPU、加速器);

  • 非一致性主总线:如AMBA AXI5 Issue H(256位),支持连接不需要缓存一致性的外设(如USB、UART);

  • 加速器一致性端口(ACP):如AMBA ACE5-Lite(128位或256位),支持非缓存主设备(如GPU、网络加速器)与集群的一致性访问;

  • 实用总线:如AMBA AXI5,为PPU、调试组件等系统组件提供编程接口;

  • 外设端口:如AXI 64位、AXI 256位或CHI Issue E(256位),支持连接低延迟的外设(如传感器、显示控制器)。

6. 调试与跟踪组件​

DSU集成了调试块(DebugBlock),支持以下调试功能:

  • 掉电调试:即使在SoC断电时,也能通过调试接口访问DSU的寄存器与缓存数据,帮助开发人员定位断电前的故障;

  • CoreSight集成:与CoreSight架构集成,提供嵌入式跟踪扩展(ETE)(用于跟踪指令执行)、交叉触发接口(CTI)(用于同步不同组件的调试事件)、调试访问端口(DAP)(用于连接外部调试器)等功能;

  • 电源关闭调试:支持在电源关闭状态下,通过调试接口访问核心的寄存器与内存数据。

三、DSU的演进与扩展​

随着ARM架构的演进,DSU也在不断升级以满足更高的性能与功能需求。例如:

  • DSU-120:支持ARMv9.2-A架构,最多14个核心(支持三种不同类型的核心),32MB L3缓存,新增领域管理扩展(RME)支持(用于安全隔离),并优化了多集群一致性(支持跨集群的缓存一致性);

  • DSU-AE:针对汽车电子场景设计,支持Split-Lock模式(将集群分为安全与非安全部分),并提供系统控制寄存器(用于控制集群的电源管理、L3缓存控制、QoS设置等)。

总结​

ARM DynamIQ Shared Unit(DSU)是DynamIQ架构的核心枢纽,通过共享L3缓存、一致性维护、电源管理、系统接口等模块,实现了异构多核处理器的高效资源共享、数据一致性、功耗优化及系统集成。其设计目标是支持高性能、低功耗的异构计算,满足移动设备、汽车电子、工业控制等场景的需求。随着DSU的不断演进(如DSU-120、DSU-AE),其功能将进一步扩展,为未来的智能计算提供更强大的支撑。

 

posted on 2025-11-20 09:35  ENGINEER-F  阅读(28)  评论(0)    收藏  举报