当前位置: 首页 > news >正文

【ARM Cache 系列文章 10 -- ARM Cortex-A720 Hunter 介绍】

文章目录

    • 概述
    • 1.1 A720 Features
      • 1.1.1 core features
      • 1.1.2 Cache features
      • 1.1.3 Debug features
    • 1.2 A720 组件介绍
      • 1.2.1 L1 缓存系统
      • 1.2.2 指令解码
      • 1.2.3 寄存器重命名
      • 1.2.4 指令分发单元
      • 1.2.5 向量执行单元
      • 1.2.6 加解密扩展单元
        • 1.2.6.1 有限域算法
    • 1.3 接口
    • 1.4 GIC CPU Interface
    • 1.5 System Control
    • 1.6 Debug
    • 1.7 Performance Monitors Extension

概述

Cortex-A720 是基于 DSU-120 实现的,下图显示了A720的实现配置图:
在这里插入图片描述

1.1 A720 Features

1.1.1 core features

  • 基于 ArmV9.2-A A64 指令集实现;
  • 包含MMU;
  • 40位的物理地址宽度,48位的虚拟地址宽度;
  • GIC(Generic Interrupt Controller);
  • 通用时钟接口,支持64位的counter计数器;
  • 支持 RSA Extension(Reliability, Availability, and Serviceability);
  • 支持 Scalable Vector Extension (SVE) ;
  • 支持 SIM 和 浮点运算;
  • 支持 AMU(Activity Monitoring Unit);
  • 支持加解密引擎。

1.1.2 Cache features

  • L1 的 指令cache和数据cache分开,L1 指令cache size 可选:32KB or 64KB,数据cache可选:32KB or 64KB;
  • L2 Cache; L2 Cache 的配置大小可选:128KB, 256KB, or 512KB;
  • 支持 MAPM(Memory System Resource Partitioning and Monitoring)。

1.1.3 Debug features

  • 支持 Armv9,2 的 debug 逻辑;
  • 支持 PMU,PMU支持的event conuter 个数可配置范围:6 或者20个;
  • 支持 ETE(Embedded Trace Extension );
  • 支持 TRBE(TRace Buffer Extension);
  • 可选项 SPE (Statistical Profiling Extension )功能;
  • 可选项 ELA-600功能。

1.2 A720 组件介绍

下图是 A720 内部组件图:
在这里插入图片描述
主要包含以下内容:

  • L1 instruction and L1 data memory systems
  • L2 memory system
  • Register rename,寄存器重命名
  • Instruction decode,指令解码
  • Instruction issue,指令分发
  • Execution pipeline,执行流水线,主要是做一些向量运算,
  • Memory Management Unit (MMU)
  • Trace unit and trace buffer
  • Performance Monitoring Unit (PMU)
  • Activity Monitoring Unit (AMU): 它的主要功能是提供一种机制来测量处理器的运行活动。
    AMU 通过收集和存储关于处理器执行的指令和内存访问的详细信息,使得开发者可以更好地理解和优化软件在硬件上的性能。这些信息可能包括执行的指令数、缓存命中和未命中的数目、分支预测的准确性等等。

    在某些场景下,AMU 的信息还可以用来进行能耗分析和优化。比如,通过比较不同的软件版本或者算法实现在处理器上运行的效率,开发者可以找到并解决可能的性能瓶颈,进一步减少能耗。
  • Generic Interrupt Controller (GIC) CPU interface
  • Branch prediction,分支预测

A720 通过 CPU Bridge 与 DSU-120 连接, DSU-120再与与外部存储及SOC上其它项连接

1.2.1 L1 缓存系统

主要是从指令cache中拿去指令然后发送到指令解码单元。

L1 缓存系统主要包括:

  • 4路组相连,大小可配置为32K或者64K, cacheline 64bytes
  • L1 指令 TLB,大小可以配置为 16K, 64K, 2M
  • 动态分支预测

1.2.2 指令解码

解码单元将AArch64 架构的指令解码成CPU内部格式,然后发送到执行单元。

1.2.3 寄存器重命名

该功能主要是通过寄存器重命令来加速乱序执行和分发解码后的指令到对应的发射通道。

1.2.4 指令分发单元

控制何时将解码后的指令发送到执行管道,它包含分发队里用于暂存解码后的指令。

1.2.5 向量执行单元

主要用于执行 SVE 和 SEV2 指令,也可以执行加解密指令。

SVE,全名Scalable Vector Extension,是ARM在ARMv8-A架构中引入的一种向量扩展。SVE提供了一种新的处理向量数据的方法,使得在处理大规模并行任务时能够更加高效。SVE的一大特点是其向量寄存器的长度是可伸缩的,可以最大达到2048位。

SVE2是在SVE基础上的进一步扩展,加入了对复杂整数和浮点数运算的支持,以及对通信和密码学应用的支持。SVE2是ARMv9架构中的一个重要特性。

1.2.6 加解密扩展单元

  • 支持 AES 加解密;
  • 支持 SHA-1,SHA-2,SHA-3 哈希算法;
  • 支持 SM3 hash 功能和 SM4 hash 功能;在讨论这个问题之前,需要先明确一点,SM3和SM4是密码算法,而不是哈希算法。SM3是一种消息摘要算法,SM4是一种分组密码算法,它们都是由中国的国家密码管理局发布的。在硬件级别上,ARMv9能够更快更安全地执行这两种算法。这对于一些需要执行大量这类加密运算的场景(如网络安全、数据保护等)非常有利。

    SM3是一种消息摘要算法,常用于数字签名、消息认证码等密码学应用中,它的输出是一个固定长度(512位)的“摘要”,任何微小的输入变化都会导致输出摘要的巨大变化,使得攻击者无法通过摘要反推出原始输入信息。

    SM4是一种分组密码算法,用于数据的加密和解密。SM4使用的密钥长度为128位,分组长度为128位,采用了分组密码中常见的Feistel结构,是对称密码算法,即加密和解密使用的是同一个密钥。
  • 支持有限域算法,用于支持Galois/Counter Mode 和 Elliptic Curve加解密, Galois/Counter Mode (GCM) 是一种块密码模式,它可以提供数据的加密和认证,常常用于保护网络数据。GCM 结合了 Galois 模式的消息认证码(GMAC)和计数器模式(CTR)的加密方式,可以同时进行加密和认证操作。
1.2.6.1 有限域算法

有限域算法,又称有限字段算法,是指在有限域(Finite Field)或者称伽罗华域(Galois Field)上进行的运算规则和算法。

有限域是由有限个元素组成的代数结构,满足加法、乘法、减法和除法四则运算的封闭性、结合律、交换律、分配律,并且乘法和加法操作都有单位元素和逆元素。

在有限域上的算法主要包括有限域上的加法、乘法、求逆等基本运算,以及更高级的多项式运算、矩阵运算、求解线性方程组等。

有限域算法在密码学、编码理论、线性代数、数字信号处理等领域都有广泛应用。例如,在密码学中,AES(高级加密标准)就是在有限域上进行运算的。在编码理论中,Reed-Solomon编码也是建立在有限域上的。

1.3 接口

在这里插入图片描述

1.4 GIC CPU Interface

TODO

1.5 System Control

TODO

1.6 Debug

TODO

1.7 Performance Monitors Extension

TODO

相关文章:

【ARM Cache 系列文章 10 -- ARM Cortex-A720 Hunter 介绍】

文章目录 概述1.1 A720 Features1.1.1 core features1.1.2 Cache features1.1.3 Debug features 1.2 A720 组件介绍1.2.1 L1 缓存系统1.2.2 指令解码1.2.3 寄存器重命名1.2.4 指令分发单元1.2.5 向量执行单元1.2.6 加解密扩展单元1.2.6.1 有限域算法 1.3 接口1.4 GIC CPU Inter…...

深度学习——残差网络(ResNet)

深度学习——残差网络(ResNet) 文章目录 前言一、函数类二、残差块三、ResNet模型四、模型训练五、小结总结 前言 随着设计越来越深的网络,深刻理解“新添加的层如何提升神经网络的性能”变得至关重要。更重要的是设计网络的能力&#xff0c…...

[java进阶]——IO流,递归实现多级文件拷贝

🌈键盘敲烂,年薪30万🌈 目录 一、认识IO流 二、了解编码与解码 二、IO流体系 三、字节输入输出流 四、字符输入输出流 五、多级文件拷贝 一、认识IO流 IO流也叫输入流(intput)、输出流(onput),该流就像java程序同硬盘之间的…...

Linux创建与删除用户

Linux创建与删除用户 新增用户: adduser 用户名【添加用户】 passwd 用户名【设置用户密码】删除用户: userdel -r 用户名【删除用户】...

对传感器采样数据的低通滤波

低通滤波(Low-pass filter) 是一种过滤方式,规则为低频信号能正常通过,而超过设定临界值的高频信号则被阻隔、减弱。 一阶低通数字滤波器 滤波系数a越小,滤波结果越平稳,但是灵敏度低;滤波系数a越大,滤波结…...

Java开发树结构数据封装!

目录 源数据如下controller接口&#xff1a;service层封装:Dao接口&#xff1a;Dao层Mapper:映射实体类&#xff1a; 源数据如下 controller接口&#xff1a; RequestMapping("/UserTreeInfo")public RespBody getUserTreeInfo(Long userId) {List<MenuTreeVo>…...

c++学习笔记汇总

[TOC] (C学习笔记汇总) 基础认识、基础语法 类、类与类之间的关系、可调用对象、std::function类模板、c11新标准、资源管理方案RAII、指针、智能指针、引用计数、C的多态 ios、istream、iostream、fstream、sstream 模板编程&#xff1a; 模板编程&#xff1a;主要分为“泛…...

[动手学深度学习]生成对抗网络GAN学习笔记

论文原文&#xff1a;Generative Adversarial Nets (neurips.cc) 李沐GAN论文逐段精读&#xff1a;GAN论文逐段精读【论文精读】_哔哩哔哩_bilibili 论文代码&#xff1a;http://www.github.com/goodfeli/adversarial Ian, J. et al. (2014) Generative adversarial network…...

Kotlin中的算数运算符

在Kotlin中&#xff0c;我们可以使用各种算术运算符来进行数值计算和操作。下面对这些运算符进行详细描述&#xff0c;并提供示例代码。 正号&#xff08;正数&#xff09;和负号&#xff08;负数&#xff09;&#xff1a; 正号用于表示一个正数&#xff0c;不对数值进行任何…...

Linux高性能服务器编程 学习笔记 第十六章 服务器调制、调试和测试

Linux平台的一个优秀特性是内核微调&#xff0c;即我们可以通过修改文件的方式来调整内核参数。 服务器开发过程中&#xff0c;可能会碰到意想不到的错误&#xff0c;一种调试方法是用tcpdump抓包&#xff0c;但这种方法主要用于分析程序的输入和输出&#xff0c;对于服务器的…...

第三期:云函数入门指南答案

1.云函数需要用户自行考虑租用/购买多少资源以达到最少成本最高效运行自己的函数。 答案&#xff1a;错误(False) 2.Cloud Functions可以为您准备好计算资源&#xff0c;弹性地、可地运行任务&#xff0c;并提供日志查询、性能监控和报警等功能。 答案&#xff1a;正确(True…...

企业怎么通过数字化工具来实现数字化转型?

数字化转型是使用数字技术和工具从根本上改变公司运营方式并向客户提供价值的过程。它涉及思维方式、流程和技术的全面转变&#xff0c;以跟上快节奏的数字时代。以下是有关公司如何通过数字工具实现数字化转型的分步指南&#xff1a; 1.定义您的愿景和目标&#xff1a; 首先确…...

React函数式写法和类式写法的区别(以一个计数器功能为例子)

函数式写法更加简洁和函数式编程思维导向&#xff0c;适用于无状态、UI纯粹的组件&#xff0c;且可以使用Hooks处理副作用。而类式写法适用于有内部状态、生命周期方法和复杂交互逻辑的组件&#xff0c;提供了更多的灵活性和控制力。 文章目录 一、计数器功能演示 1.函数式写法…...

【根据国防科大学报官网word模板修改的Latex模板】

根据国防科大学报官网word模板修改的Latex模板 学报Word模板链接Latex模板结构编译环境为Texlivevscode或Textstudio 学报Word模板链接 学报官网相关下载链接 点击链接即可前往官网下载相关word模板 Latex模板结构 latex模板 ass.cfg文件 %深层模板文件ass.cls文件 %浅层模板…...

系列十一、Redis中分布式缓存实现

一、缓存 1.1、什么是缓存 内存就是计算机内存中的一段数据。 1.2、内存中的数据特点 读写快断电数据丢失 1.3、缓存解决了什么问题 提高了网站的吞吐量和运行效率减轻了数据库的访问压力 1.4、哪些数据适合加缓存 使用缓存时&#xff0c;一定是数据库中的数据极少发生改…...

Spark大数据分析与实战笔记(第一章 Scala语言基础-4)

文章目录 每日一句正能量1.4 Scala面向对象的特性1.4.1 类与对象的特性1.4.2 继承1.4.3 单例对象和伴生对象1.4.4 特质 每日一句正能量 若要快乐&#xff0c;就要随和&#xff1b;若要幸福&#xff0c;就要随缘。快乐是心的愉悦&#xff0c;幸福是心的满足。别和他人争吵&#…...

腾讯云服务器端口localhost可以访问,外部无法访问解决

搭建frp跳板&#xff0c;发现无法使用。ssh 连接不上。 主要检查2个东西&#xff1a; 1. ubuntu ufw系统防火墙。这个默认是关掉的 2. tencent这个防火墙规则设置后&#xff0c;还要设置到实例上。 以前不是这样的。就掉坑里了。 # systemctl rootVM-4-4-ubuntu:/lib/syst…...

【软考-中级】系统集成项目管理工程师 【16 变更管理】

持续更新。。。。。。。。。。。。。。。 【第十六章】变更管理 (选择2分 考点 1:变更的常见原因考点 2:变更管理的原则是项目基准化、变更管理过程规范化考点 3考点 4考点 5:变更的工作程序考点 6考点 7考点 8考点 9考点 10考点 11考点 12:变更分类系列文章经典语录 考点 1:变…...

【Eclipse】查看版本号

1.在Eclipse的启动页面会出现版本号 2. Eclipse的关于里面 Help - About Eclipse IDE 如下图所示&#xff0c;就为其版本 3.通过查看readme_eclipse.html文件...

论文精讲目录

ViT论文逐段精读【论文精读】MoCo 论文逐段精读【论文精读】对比学习论文综述【论文精读】Swin Transformer论文精读【论文精读】CLIP 论文逐段精读【论文精读】双流网络论文逐段精读【论文精读】I3D 论文精读【论文精读】视频理解论文串讲&#xff08;上&#xff09;【论文精读…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域&#xff0c;向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能&#xff0c;能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作&#xff0c;并通过具体…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...