ARM DSU(DynamIQ™ Shared Unit)概述

这篇具有很好参考价值的文章主要介绍了ARM DSU(DynamIQ™ Shared Unit)概述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、DSU是什么?

DSU (DynamIQ™ Shared Unit)的组成和功能:DSU 包括 L3 内存系统、控制逻辑和外部接口,用于支持 DynamIQ™集群。

DynamIQ™集群微体系结构整合了一个或多个核心与 DSU,形成一个按指定配置实现的集群。在宏单元实施过程中,可以选择和配置core。

集群可以以以下三种配置之一实现:

  • 一组,具有相同微体系结构的核心。
  • 两组核心,其中每组具有不同的微体系结构。这种配置可能在 DynamIQ™ big.LITTLE™集群中使用。
  • 三组核心,其中每组具有不同的微体系结构。

ARM DSU(DynamIQ™ Shared Unit)概述,RISCV,arm

二、DSU的各个组成部分

DSU的内部结构,包括缓存、一致性维护、接口配置以及调试支持等方面

  1. L3 Cache(L3缓存):

    • L3 Cache 是DSU内的一部分,用于简化核心之间的进程迁移。
    • 部分核心可以配置为没有L2缓存,对于这些核心,共享的L3缓存被视为L2缓存。在整个文档中,术语'L3缓存'用于描述这个共享缓存。
  2. Snoop Control Unit (SCU)(snoop控制单元):

    SCU用于维持核心和L3缓存之间的一致性。它包括一个 a snoop filter,以优化一致性维护操作。
  3. Internal Interfaces to the Cores(核心的内部接口):

    这些内部接口在宏单元实施期间配置,不直接可见。
  4. External Interfaces to the SoC(与SoC的外部接口):

    外部接口连接到SoC。
  5. Core Configuration(核心配置):

    每个核心可以配置为与DSU同步运行,共享时钟,或异步运行,具有独立时钟。
  6. Microarchitecture Features and System Control Registers(微体系结构特性和系统控制寄存器):

    与实施的核心相关的微体系结构特性和系统控制寄存器在附带核心的技术参考手册(TRMs)中描述。
  7. DebugBlock:

    DSU配备了一个DebugBlock,主要目的是提供调试支持,帮助开发者在调试和分析软件时更有效地操作处理器核心。集成了嵌入式交叉触发器、调试寄存器,并支持在断电时进行调试。该调试块包括在调试电源域中所需的所有功能。DebugBlock 的存在提高了 DSU 的调试和分析能力,使得开发者能够更容易地理解、诊断和修复软件问题。这对于在复杂的嵌入式系统中进行开发和调试至关重要。
    • 完整的调试功能: DebugBlock 包含了所有在调试过程中可能需要的功能,从捕获跟踪信息到检查寄存器状态等。这使得开发者能够更全面地了解系统的运行情况,有助于排除和分析问题。

    • 支持断电调试: DebugBlock 提供对调试电源域的支持,允许在系统断电的情况下进行调试。这对于分析在低功耗状态下的问题非常重要,因为在这些状态下,系统的行为可能与正常操作时不同。

    • 调试寄存器: DebugBlock 包含调试寄存器,用于捕获、存储和检查关键的系统状态和变量。这对于调试代码、追踪执行路径以及查找潜在问题非常有帮助。

    • Embedded Cross Trigger(嵌入式交叉触发器): DebugBlock 集成了嵌入式交叉触发器,这是一种用于协调多个调试事件和操作的机制。通过交叉触发器,开发者可以定义特定条件下触发调试操作,这对于捕捉复杂的调试场景非常有用。

补充知识点:

1)计算机缓存结构:

计算机系统中的层次化缓存层次结构通常由多个级别的缓存组成,这些级别包括L1缓存、L2缓存和L3缓存。每个级别的缓存都有不同的特性,例如容量、访问速度和成本。以下是一般的层次化缓存结构:

  1. L1缓存(第一级缓存):

    • 位置:通常与处理器核心紧密集成,位于核心内部。
    • 容量:相对较小,以KB为单位。
    • 访问速度:非常快,与处理器核心的时钟速度相匹配。
    • 作用:提供最快的数据访问,用于存储频繁使用的指令和数据。
  2. L2缓存(第二级缓存):

    • 位置:通常位于处理器核心和主内存之间。
    • 容量:比L1缓存大,以MB为单位。
    • 访问速度:比主内存快,但相对于L1缓存较慢。
    • 作用:扩展了缓存层次结构,提供更多的缓存空间,用于存储更多的指令和数据。
  3. L3缓存(第三级缓存):

    • 位置:通常位于多个处理器核心之间,是共享的。
    • 容量:更大,以MB或更大的单位为准。
    • 访问速度:相对于L2缓存和L1缓存较慢,但仍然比主内存快。
    • 作用:为多个处理器核心提供共享的缓存资源,促进核心之间的数据共享和一致性
  4. 主内存(RAM):

    • 位置:通常位于计算机系统的主板上。
    • 容量:远大于L3缓存,以GB为单位。
    • 访问速度:相对较慢,远低于缓存。
    • 作用:存储操作系统、应用程序和数据,是计算机系统中存储层次结构的最大容量部分。

层次化缓存结构的设计旨在利用不同级别缓存的优势,通过提供更小、更快的缓存来提高数据访问速度,并通过较大、较慢的缓存提供更大的存储容量。这有助于平衡性能和成本。

程序执行时,会先将内存中的数据加载到共享的 L3 Cache 中,再加载到每个核心独有的 L2 Cache,最后进入到最快的 L1 Cache,之后才会被 CPU 读取。

ARM DSU(DynamIQ™ Shared Unit)概述,RISCV,arm

2)L3 Cache:

L3 Cache(第三级缓存)是计算机系统中的一个层次化缓存层次结构中的一部分。在这里L3 Cache是DSU的组成部分之一,用于支持DynamIQ™集群中的多个处理核心。

具体来说,关于L3 Cache的说明包括以下几个关键点:

  1. 简化进程迁移: L3 Cache的一个作用是简化处理core之间的进程迁移。当一些处理core被配置为没有独立的L2缓存时,它们可以共享L3 Cache,并将其视为自己的L2缓存。这有助于在处理器核心之间更灵活地进行任务切换和迁移。

  2. 层次化缓存结构:在计算机系统中,层次化缓存结构是一种常见的设计,其中L1、L2和L3缓存层次不同,越高级别的缓存容量越大,但访问速度相对较慢。L3 Cache通常是多个处理核心共享的,以提供更大的缓存容量。

  3. 一致性维护: L3 Cache通过Snoop控制单元(Snoop Control Unit,SCU)来维持处理核心和L3缓存之间的一致性。这确保了所有核心对共享数据的访问是同步和一致的,防止数据不一致的问题。

总体而言,L3 Cache在多核系统中发挥着重要作用,提供了更大的共享缓存,促进了任务之间的灵活性和数据一致性。

3)没有L2的core,L3 cache可视为L2cache

某些处理器core可以被配置为没有独立的第二级缓存(L2缓存)。对于这些没有L2缓存的core,系统将共享的第三级缓存(L3缓存)视为它们的L2缓存。

通常情况下,每个处理器core都有自己的L1缓存和L2缓存。然而,有时为了某些设计或性能的考虑,可以选择将某些core配置为没有独立的L2缓存。在这种情况下,这些core需要访问共享的L3缓存来获取缓存的好处,以满足其对数据和指令的快速访问需求。

这种配置的优点可能包括降低硅芯片的复杂性、减小硅芯片的面积、降低成本等。然而,也需要确保在共享L3缓存的情况下,这些核心仍然能够有效地协同工作,并且对共享缓存的访问能够被管理和优化,以确保整体性能的提升。

三、DSU的feature list

  1. AMBA ACE5 或 AMBA 5 CHI 主总线接口:

    DSU支持 AMBA ACE5 或 AMBA 5 CHI 主总线接口,这是一种用于高性能片上总线通信的标准接口协议。
  2. 可选的128位宽的 I/O  I/O-coherent Accelerator Coherency Port(ACP):

    提供了一个可选的 I/O 一致性加速器一致性端口,宽度为128位。
  3. 可选的64位宽的设备外设端口:

    DSU 提供了一个可选的设备外设端口,宽度为64位。
  4. 支持40位、44位或48位物理地址的核心:

    DSU 支持带有40位、44位或48位物理地址的处理器core。
  5. Arm®v8.2-A 或 Arm®v8.4-A 调试逻辑:

    • DSU 集成了 Arm®v8.2-A 或(适用于兼容核心的情况下) Arm®v8.4-A 调试逻辑,用于支持调试操作。
  6. 可靠性、可用性和可维护性(RAS)支持:

    DSU 提供了对可靠性、可用性和可维护性的支持,这是一种确保系统在运行时保持稳定和可管理的功能。
  7. 可选的统一的16路组相联 L3 缓存:

    DSU 提供了一个可选的统一的16路组相联 L3 缓存,用于提供更大的共享缓存。
  8. 64字节的缓存行:

    缓存中的每一行都有64字节,这是缓存操作的基本单位。
  9. 缓存分区支持:

    DSU 支持缓存分区,使得可以将缓存划分为不同的部分,以满足特定的应用需求。
  10. 部分 L3 缓存断电支持:

    • 提供了对 L3 缓存的部分断电支持,以降低功耗。
  11. 可选的缓存保护形式:

    DSU 提供了一个可选的缓存保护功能,采用错误纠正码(ECC)形式,用于提高缓存的可靠性。
  12. Snoop Control Unit (SCU)(嗅探控制单元):

    描述了 DSU 中的 Snoop Control Unit(嗅探控制单元)。SCU 通常用于维持核心和 L3 缓存之间的一致性,包括嗅探过滤器来优化一致性维护操作。
  13. L3 memory system clocked at a rate synchronous to the external system interconnect or at integer multiples(L3内存系统的时钟频率):

    描述了 L3 内存系统的时钟可以与外部系统互连同步,也可以以整数倍的频率运行。这意味着 L3 内存系统的时钟可以与系统互连的时钟同步,或者以系统互连时钟的整数倍运行。
  14. Arm®v8.2-A or Arm®v8.4-A architecture cores supported(支持 Arm®v8.2-A 或 Arm®v8.4-A 架构核心):

    DSU 支持 Arm®v8.2-A 或 Arm®v8.4-A 架构的处理器核心。这表明 DSU 兼容这两种架构,可以与相应版本的 Arm 处理器核心协同工作。
  15. Support for three types of core(支持三种类型的核心):

    描述了 DSU 的支持范围,可以与三种不同类型的核心协同工作。这可能涉及到不同架构或配置的处理器核心。
  16. Cores can be clocked at different frequencies(核心可以以不同频率运行):

    提到了处理器核心可以以不同的频率运行。这表示 DSU 允许系统中的不同核心具有不同的时钟频率,这在一些应用中可以提供更大的灵活性,例如动态调整功耗或优化性能。

总体而言,这些功能使得 DSU 具备了在高性能嵌入式系统中处理共享缓存、总线通信、调试和可靠性,对不同类型核心的支持、内存系统时钟的配置灵活性以及与外部系统互连的协同能力。这对于处理复杂的计算和通信任务的处理器核心是至关重要的。文章来源地址https://www.toymoban.com/news/detail-803344.html

到了这里,关于ARM DSU(DynamIQ™ Shared Unit)概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ARM Coresight 系列文章19 -- Performance Monitoring Unit(性能监测单元)

    请阅读 【ARM Coresight SoC-400/SoC-600 专栏导读】 许多体系结构都包含 PMU(Performance Monitoring Unit)硬件,用于跟踪、计数系统内部的一些底层硬件事件,如与CPU有关的事件(执行指令数、捕获异常数、时钟周期数等)、与cache有关的事件(data/inst./L1/L2 cache访问次数,m

    2024年02月08日
    浏览(42)
  • 【ARM Coresight Debug 系列 1 -- ARM Debug 技术概述】

    请阅读 【ARM Coresight SoC-400/SoC-600 专栏导读】 下篇文章:ARM Coresight 系列文章 2 - ARM Coresight 介绍 在过去的系统中,开发人员可能使用昂贵的硬件工具,如逻辑分析仪或示波器来观察程序的行为。但现代处理器是一个复杂的SOC,通常包含内存、缓存、和许多其他逻辑单元。可能

    2024年02月03日
    浏览(56)
  • ARM处理器概述

    RISC处理器和CISC处理器 首先了解一下两种处理器名字: RISC(Reduced Instruction Set Computer): 精简指令集 处理器 与之相对应的是: CISC(Complex Instruction Set Computer): 复杂指令集 处理器 顾名思义,RISC比CISC更加简单,那么对于处理器来说什么能称为简单呢?可以联想为生活中可

    2024年02月13日
    浏览(57)
  • ARM微处理器的指令集概述

    ARM处理器是基于精简指令集计算机(RISC)原理设计的 ,指令集和相关译码机制较为简单。ARM微处理器的指令集是加载(Load)/存储(Store)型的,也即指令集仅能处理寄存器中的数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来

    2024年02月02日
    浏览(61)
  • ARM v8 Cortex R52内核 01 概述

    Cortex-R52处理器是一种中等性能、有序、超标量处理器,主要用于汽车和工业应用。它还适用于各种其他嵌入式应用,如通信和存储设备。 Cortex-R52处理器具有一到四个核心,每个核心实现一个单一的Armv8-R AArch32兼容处理单元processing element (PE)。在Cortex-R52上下文中,PE和核心在

    2024年04月17日
    浏览(39)
  • Android /android_vendor.32_arm64_armv8-a_shared/libtinyals a.so.abidiff报错

    Android /android_vendor.32_arm64_armv8-a_shared/libtinyals a.so.abidiff报错 解决方法:

    2024年02月07日
    浏览(43)
  • 【ARM架构】ARMv8-A 系统中的安全架构概述

    一个安全或可信的操作系统保护着系统中敏感的信息,例如,可以保护用户存储的密码,信用卡等认证信息免受攻击。 安全由以下原则定义: 保密性:保护设备上的敏感信息,防止未经授权的访问。有以下几种方法可以做到,比如密码和加密密钥。 完整性:使用公钥来保护

    2024年02月21日
    浏览(48)
  • 【小黑嵌入式系统第二课】嵌入式系统的概述(二)——外围设备、处理器、ARM

    板级支持包(BSP) 是商用嵌入式操作系统实现可移植性所采用的一种方案,是硬件抽象层的一种实现。BSP是介于硬件和操作系统中驱动层程序之间的一层,有时也可认为属于操作系统一部分。BSP实现了对操作系统的支持,为上层的驱动程序提供访问硬件设备的函数包。 BSP隔离了

    2024年04月17日
    浏览(69)
  • 【小黑嵌入式系统第二课】嵌入式系统的概述(二)——外围设备、处理器、ARM、操作系统

    上一课: 【小黑嵌入式系统第一课】嵌入式系统的概述(一)——概念、特点、发展、应用 下一课: 【小黑嵌入式系统第三课】嵌入式系统硬件平台(一)——概述、总线、存储设备(RAMROMFLASH) 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享

    2024年02月08日
    浏览(48)
  • 【单片机】STM32 ARM Cortex-M0 微控制器特性概述 双排 TSSOP封装好手工焊接的STM32芯片,双排

    STM32F070CB STM32F070RB STM32F070C6 STM32F070F6 在嵌入式系统和物联网应用中,ARM Cortex-M0 微控制器以其强大的性能和丰富的功能而备受瞩目。本文将介绍该微控制器的主要特性,使读者更好地了解其适用范围和潜在应用。 ARM® 32位 Cortex®-M0 CPU 频率高达 48 MHz Flash 存储器 32 到 128 Kbytes

    2024年01月18日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包