购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 ARM体系结构及微处理器系列

1.3.1 ARM公司简介

ARM(Advanced RISC Machines)既是一个公司的名字,又是一类处理器的统称,还是一种技术的名字,它有如下4层含义。

ARM是一种RISC微处理器的体系结构。

ARM是Advanced RISC Machine Limited公司的简称。

ARM是Advanced RISC Machine Limited公司的产品,该产品是以IP核(Intellectual Property Core,知识产权核)的形式提供的。

ARM还泛指许多半导体厂商基于ARM IP核生产出来的ARM处理器系列芯片及其衍生产品。

随着IT行业的迅猛发展,Intel、Motorola、TI等上游厂商推出了基于不同架构的处理器芯片。架构不同,软件就不同,这对整个数字技术的发展非常不利。全球工业价值链基本是大公司的天下,像Motorola这样的公司在测试、制造、系统封装,甚至处理器设计等领域都处于垄断地位。20世纪80年代末,产业链分工更加明确。

1990年,一位名叫Robin Saxby的英国人离开了Motorola公司,与另外12名工程师一起开始了创业之旅,ARM公司正式成立于1991年11月,公司标志如图1-18所示。

为了防止由于嵌入式处理器芯片层次及生产方式上的复杂性而造成名词上的混乱,通常将图1-19中的处理器部分称为处理器核;把处理器核与其通用功能模块的组合称为处理器;而把在处理器基础上经半导体芯片厂商二次开发,以芯片形式提供的用于嵌入式系统的产品称为嵌入式微控制器。也就是说,IP核供应商提供的是处理器核和处理器的知识产权,而半导体芯片厂商生产的则是嵌入式控制器芯片。

图1-18 ARM公司标志

图1-19 嵌入式产品的层次结构

ARM公司是专门从事基于RISC技术芯片设计开发的公司。作为IP核供应商,ARM公司并不直接从事芯片生产,而是设计出高效的IP核并授权给各半导体芯片厂商使用。世界各大半导体芯片生产厂商从ARM公司购买其设计的ARM处理器IP核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM处理器芯片,如图1-20和图1-21所示。由OEM客户利用这些芯片来构建基于ARM技术的最终应用系统产品。

图1-20 电子设备产业链

在集成电路产业链,大体可以分为IP设计、IC设计、晶圆制造和封装测试四大环节。

ARM是一家IP设计公司,每隔数年它就推出一代新的CPU指令集架构(如ARMv8和Cortex-A73),并将这个指令集架构授权给IC芯片公司(如高通、联发科、三星、海思等)使用;IC芯片公司基于这些指令集架构进行芯片(如骁龙820、Helio X20、麒麟960等)设计;IC芯片公司将设计方案交给晶圆制造企业(如台积电、三星等),由其生产出包含很多芯片的圆片;封装测试企业(如日月光、长电科技等)将圆片切割成独立的芯片,并进行封装测试;终端设备生产商(如华为、小米)利用芯片进行电子产品的研发和生产。

图1-21 ARM运作过程

由此可见,ARM处理器一般是作为“内核”存在于专用MP U内部的,这也是它被称为“ARM核”的原因。

IP核有5个基本特征,即第三方使用、按照复用原则设计、可读性强、完备的可测性和端口定义标准化。

目前,全世界有数十家规模较大的IC芯片公司正在使用ARM公司的授权,如图1-22所示。

图1-22 ARM公司的合作伙伴

正因如此,ARM技术获得了更多的第三方工具、制造、软件的支持,使得整个系统的成本进一步降低,使产品更容易进入市场并被消费者接受,因而更具有竞争力。目前,采用ARM IP核的微处理器(ARM处理器)已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,如图1-23所示。ARM技术正在逐步渗透到日常生活的各个方面。ARM的成功是建立在一个简单而又强大的原始设计之上的,随着技术的不断进步,这个设计也在不断地改进。ARM处理器并不是单一的,而是遵循相同设计理念,使用相似指令集架构的一个处理器系列。

图1-23 ARM微处理器的应用

1.3.2 ARM体系结构简介

所谓“体系结构”,又称“系统结构”,是指程序员在为特定处理器编制程序时所“看到”,从而可以在程序中使用的资源及其相互之间的关系。体系结构定义了指令集(ISA)和基于该体系结构下处理器的编程模型。体系结构最为重要的就是处理器所提供的指令系统和寄存器组。基于同样体系结构的处理器可以有多种,每种处理器的性能不同,所面向的应用也就不同。但每种处理器的实现都要遵循这一体系结构。ARM体系结构为嵌入式系统提供很高的系统性能和效率,同时保持较低的功耗和较小的面积。

目前流行的移动处理器几乎都采用ARM体系结构,这种RISC架构具有如下四大优势。

体积小、功耗低、成本低、性能强。

大量使用寄存器且大多数数据操作都在寄存器中完成,指令执行速度很快。

寻址方式灵活简单,执行效率高。

指令长度固定,可通过多流水线方式提高处理效率。

与体系结构直接相关的概念是“微架构”。微架构是指实现了一个指令集的CPU。例如,ARMv8是一个指令集,也是一个架构版本;而ARM Cortex-A72是一个具体实现ARMv8指令集的微处理器,是一个微架构。

1.ARM体系结构

目前,ARM体系结构共定义了9个版本,从版本1到版本9,ARM体系结构的指令集功能不断扩大。不同系列的ARM处理器的性能差别很大,应用范围和对象也不尽相同,如表1-6所示。但是基于相同ARM体系结构的应用软件是兼容的。

表1-6 ARM体系结构的发展

2.ARMv7简介

ARMv7是在ARMv6的基础上诞生的。它采用了Thumb-2技术,是在ARM的Thumb代码压缩技术的基础上发展起来的,并且保持了对现存ARM解决方案的代码兼容性。Thumb-2技术比纯32位代码少使用31%的内存,减少了系统开销,同时能够提供比已有的基于Thumb技术的解决方案高出38%的性能。ARMv7体系结构还采用了NEON技术,将DSP和媒体处理器能力提高了近4倍,并支持改良的浮点运算,满足下一代3D图形、游戏物理应用及传统嵌入式控制应用的需求。在ARMv7体系结构版本中,内核架构首次从单一款式变成如下3种款式。

款式A:高性能的应用处理器(Application Processor)系列,主要面向移动计算、智能手机、服务器等高端应用领域。这类处理器运行在很高的时钟频率(超过1GHz)下,可以支持像Linux、Android、MS Windows和移动操作系统等完整操作系统需要的内存管理单元(MMU)。

款式R:实时控制处理器(Real Time Controller)系列,主要面向实时控制应用领域,如硬盘控制、汽车传动控制和无线通信基带控制等。多数实时控制处理器不支持MMU,但通常具有存储器保护单元(Memory Production Unit,MPU)、Cache和其他针对工业应用设计的存储功能。这类处理器运行在比较高的时钟频率(如200MHz~1GHz)下,具有非常小的响应延迟。虽然实时控制处理器不能运行完整版本的Linux和Windows操作系统,但支持大多数实时操作系统(RTOS)。

款式M:微控制器系列,主要用于深度嵌入的、具有单片机风格的系统中,它是为单片机应用量身定制的。微控制器通常具有面积很小但能效比很高的特点。通常这类处理器的流水线很短,最高时钟频率很低(但也有此类处理器可以运行在200MHz以上)。新的Cortex-M处理器非常易用,因此在单片机和深度嵌入式系统中的应用非常成功。

ARM指令集体系结构和处理器型号命名规则如图1-24所示。

图1-24 ARM指令集体系结构和处理器型号命名规则

3.ARM处理器的主要特征

采用RISC体系结构。

有大量的寄存器,可用于多种用途。

Load/Store体系结构。

每条指令均条件执行。

多寄存器的Load/Store指令,大多数数据操作都在寄存器中完成。

指令长度固定。

能够在单时钟周期执行的单条指令内完成一项普通的移位操作和一项普通的ALU操作。

通过协处理器指令集来扩展ARM指令集,包括在编程模式中增加新的寄存器和数据类型。

在Thumb体系结构中以高密度16位压缩形式表示指令集。 wo88qIgORdVCiR7GJLLln1jk21zxHruBBbq6qvGxPMJbgKTZdrS4I8lu7w4eHLuW

点击中间区域
呼出菜单
上一章
目录
下一章
×