ARM架构那些事

ARM架构那些事,第1张

1、ARM指令集与架构   

ARM的全称为Advanced RISC Machines,直译为高级精简指令集处理器;RISC即为精简指令集,那么对应的就存在CISC,其为复杂指令集。

CISC指令集在计算机早期比较常用,CISC指令比较长,实现的功能比较多,这样对内存的访问相对比较少,但CPU设计相对复杂;而采用RICS常用指令流水线来提高指令利用效率。

(注:RISC--Reduced InstrucTIon Set Computers,CISC--Complex InstrucTIon Set Computers)

我们需要明确的是ARM不生产芯片,它只是进行ARM架构的设计,并授权给相应的半导体厂家来生产芯片,所以大家通常称ARM为半导体知识产权(IP)提供商,与RISC-V这种完全开放架构不同,目前看来RISC-V完全开源且架构简单,给ARM带来了新的挑战。

ARM授权也是分不同层面的,包括架构层、内核层和应用层授权,不同层面所开放的具体内容不同,架构层可以直接修改成自己的处理器,而内核层也叫IP核层,主要是用于扩展自己的外设来形成自己的SOC等,而应用层权限就更少了。

2、ARM架构种类  

内核与架构经常有一些朋友分不清,我们常说的ARMV1~ARMV9都是表示不同版本的架构,不同的架构,指令集也存在差异,然而根据不同的架构又开发出了不同CPU内核,比如Cortex-A,Cortex-M等。

目前主要是三种CPU架构系列:

A 系列 (应用)

所有架构系列的最高性能

主要的Arm 处理器 IP 范围:Cortex-A、Neoverse , Cortex-X

主要用于复杂的计算应用领域,例如PC、笔记本电脑、智能电视、服务器、联网设备、智能手机、车用信息娱乐系统、云存储设备和超级计算机。

R 系列( 实时)

针对具有实时需求的系统进行优化

主要的Arm 处理器 IP 范围:Cortex-R

需要实时响应需求的安全关键应用或需要决定性响应的应用,例如医疗设备、车辆驾驶、刹车与警示、网络和储存设备,以及嵌入式控制系统。

M 系列 (微控制器)

专为小型、低功耗、高效节能装置而设计

主要的Arm 处理器 IP 范围:Cortex-M

能源效率、功耗及尺寸优先。安全性处理器、物联网以及像是穿戴式装置、小型感测器、通讯模块和智慧家庭产品等嵌入式装置,大部分单片机都是基于此架构来设计。

3、SOC   

在芯片行业SoC与电池中的SOC不同,这里的全称为System-on-a-chip,也叫片上系统。SOC上不仅仅包括处理器核还包括一些访问总线,外设控制器、片内RAM等等。

这样看来,我们平时看到的单片机,比如stm32芯片;处理器芯片,比如i.MX 6ULL;或者是DSP,TMS320280049等等,都可以认识为SoC。

ARM架构那些事,6c8f41ce-34fd-11ed-ba43-dac502259ad0.png,第2张

SOC片上系统的各部分都是通过总线进行通信连接,通常总线分为地址总线、数据总线和控制总线。在CPU和内部RAM之间可能存在多级高速缓存,这些缓存速度非常快,可以提高CPU访问数据的能力。

那一般内核里面有些什么呢?如下是CORTEX-M55的内核大致功能框架:

ARM架构那些事,6ca15058-34fd-11ed-ba43-dac502259ad0.png,第3张

比如一些平时开发中提到的MPU内存保护单元、FPU浮点运算单元、DSP处理单元,JTAG调试单元等等,都位于内核上。

3、两大体系结构   

分别是冯诺依曼体系结构和哈佛体系结构。

冯·诺依曼结构采用代码与数据的统一编址,存储器上的程序和数据加载到RAM中,然后CPU根据指令运行对应的程序。

ARM架构那些事,6cb0fd96-34fd-11ed-ba43-dac502259ad0.png,第4张

哈佛结构是独立编址的,代码空间与数据空间分开:

ARM架构那些事,6cbc097a-34fd-11ed-ba43-dac502259ad0.png,第5张

所以大部分的单片机都采用的哈佛架构,当然现在也出现了非常多两者混合的形式。

审核编辑:汤梓红

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2998342.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-26
下一篇 2022-09-26

发表评论

登录后才能评论

评论列表(0条)

保存