首页 新闻资讯 了解ARM64体系结构看这一篇就够了— 基于Armv8-A体系结构解读

了解ARM64体系结构看这一篇就够了— 基于Armv8-A体系结构解读

1 ARM体系结构是什么? ARM体系结构,又称ARM架构,是一种硬件规范。

1

ARM体系结构是什么?

 

 

ARM体系结构,又称ARM架构,是一种硬件规范。主要用来约定指令集、芯片内部体系结构(如内存管理、高速缓存管理)等。

 

ARM指令集在结构体系中没有约定每一条指令在硬件描述语言(VHDL或Verilog HDL)中如何实现,而只约定了每条指令的格式、行为规范、参数等。

 

ARM指令集一直在变化和发展中。Armv8体系结构更大的改变是增加了一个新的64位指令集,这是对原来指令集的有益补充和增强。A64指令集可以处理64位宽的寄存器和数据,并使用64位的指针来访问内存。

 

Armv8架构在AArch64运行状态下使用A64指令集,在AArch32运行状态下使用A32指令集。A64指令集和A32 指令集是不兼容的,它们是两套完全不一样的指令集,它们的指令编码是不一样的。

 

 

2

Armv8-A体系结构的基本概念

 

 

2.1 执行状态(Execution State):处理器运行时的环境,包括寄存器的位宽、支持的指令集、异常模型、内存管理以及编程模型等。

Armv8体系结构定义了AArch64和AArch32两个执行状态。

 

2.2 系统寄存器命令

AArch64 执行状态支持31个64位的通用寄存器,分别是X0-X30;如果使用Xn(如X0,X1,X2…)表示64位寄存器,如果使用Wn(如W0,W1,W2…)表示Xn寄存器的低32位数据。

 

了解ARM64体系结构看这一篇就够了— 基于Armv8-A体系结构解读

AArch32 执行状态支持16个32位的通用寄存器。

 

2.3 特殊寄存器

ZR零寄存器内容全是0,可以用做源寄存器,也可以用作目标寄存器。

PC指针寄存器通常用来指向当前运行指令的下一条指令的地址,用于控制程序中指令的运行顺序,但编程人员不能通过指令来直接访问。

SP堆栈指针寄存器,Armv8体系结构支持4个异常等级,每个等级都有一个专门的SP寄存器SP_ELn.

SPSR备份程序状态寄存器,当我们运行一个异常处理程序时,处理器会把PSTATE寄存器的值暂时保存在备份程序状态寄存器(SPSR)里,当异常处理完成并返回时,再把SPSR的值恢复到PSTATE寄存器。

ELR异常链接寄存器,用于存放异常返回地址。

 

2.4 AArch64异常等级

ARMv8-A架构定义了一组异常级别(Exception Level,EL),从EL0到EL3,其中: 如果ELn为异常级别,n的值越大表示软件执行权限越高。

 

 

3

Cortex-A72处理器举例

 

 

了解ARM64体系结构看这一篇就够了— 基于Armv8-A体系结构解读

 

3.1 指令预取单元

指令预取单元从L1指令高速缓存中提取指令,并在每个周期将多达3个指令传送到指令解码单元。它支持动态和静态分支预测。

 

3.2 指令译码单元

令解码单元支持A32/T32/A64和高级SIMD及浮点指令集。指令解码单元还执行寄存器重名,通过消除写后写(WAW)和读后写(WAR)的冲突来实现乱序执行。

 

3.3 指令分配单元

指令分配单元控制译码后的指令何时被分配到执行流水线以及返回的结果何时终止。

组成:

  • ARM核心通用寄存器

  • SIMD和浮点寄存器集

  • AArch32 CP15 和AArch64系统寄存器

 

3.4 加载/存储单元

加载/存储单元(LSU)执行加载和存储指令,包含L1数据存储系统,并为L2内存子系统的内存一致性请求提供服务。

组成:

  • 32K两路组关联的L1高速缓存,缓存行为64字节。

  • 支持32个全关联的数据后备缓存区(TLB)

  • 自动硬件预取器,生成针对L1数据缓存和L1缓存的预取。

 

3.5 L1内存系统

L1内存系统保留指令内存系统和数据内存系统。

 

3.6 MMU

内存管理单元MMU用来实现虚拟地址到物理地址的转换。在AArch64状态下支持长描述符的页表格式,支持不同大小的页面。例如4KB/16KB/64KB。

 

3.7 L2 内存系统

L2内存系统不仅负责处理每个处理器内核的L1指令和数据缓存仲裁,还通过一致性扩展(ACE) 或 一致性集线接口(CHI)连接到内存系统。

 

 

重点回顾

 

ARM架构包含指令集和芯片内部构成。这就会涉及到指令的获取、分配、执行等等。展开来说不同的执行状态会有不同的指令集和相关的寄存器,寄存器和处理器直接相关。寄存器还要与内存进行通信,会涉及到高速缓存L1,L2等级别。同时还有在处理事务的时候有不同的异常处理等等。以上这些就是ARM64体系结构。如果您喜欢本文,欢迎评论、点赞、收藏、转发。

 

 

 

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: suifengmianlai

为您推荐

圆满落幕!望友精彩亮相2023工业软件生态大会

11月5日-6日,2023工业软件生态大会在深圳成功召开。

开目软件受邀出席2023工业软件生态大会,共探智造未来!

11月5日-6日,2023工业软件生态大会在深圳会展中心火热开展,作为中国高端工业软件领导品牌、行业领先的3D智能工艺软件提供商,开目软件受邀出席并发表主题演讲。

2023第四届中国FMEA峰会暨聪脉新品发布会圆满召开

2023 中国·深圳 第四届中国FMEA峰会 暨聪脉新品发布会 圆满召开 聚焦FMEA 11月1日,由聪脉(上海)信息技术有限公司(以下称聪脉)主办的中国第四届FMEA峰会暨聪脉新品发布会在深圳凯悦酒店圆满召开。

一周客户新闻速递

近期热点 NEWS 2023.11.6 客户新闻 聪脉知道 了解企业客户最新热点 关心企业客户最新资讯 企 业 客 户 新 闻 周 速 递 新闻速览 近期客户热点新闻 1 中国一汽研发总院成功举办中国汽车工程学会汽车非金属材料分会第十届年会 2 金溢科技助力西部首个智驾社区启用! 3 宝钢股份与中国港湾签署战略合作协议 4 4 3 4 日月光半导体推出整合设计生态系统IDE将封装设计效率提升且周期最高可缩短50% 5 广东亿迅2个创新产品入选国家级服务业数字化解决方案优秀案例 6 北方华创连续三年荣登中国电子百强企业榜单 7 广西康明斯发动机首次在柳工重型拖拉机上实现成功配套 聚焦汽车整车行业客户 中国一汽研发总院成功举办中国汽车工程学会汽车非金属材料分会第十届年会 11月2日,“中国汽车工程学会汽车非金属材料分会第十届年会”在湖北十堰隆重举行。

27地入选!住房城乡建设部开展工程建设项目全生命周期数字化管理改革试点

“ 为贯彻落实国务院关于工程建设项目审批制度改革部署,按照全国住房城乡建设工作会议关于“数字住建”工作部署要求,加快推进工程建设项目全生命周期数字化管理,近日,住房城乡建设部印发《关于开展工程建设项目全生命周期数字化管理改革试点工作的通知》,决定在天津等27个地区开展工程建设项目全生命周期数字化管理改革试点工作。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部