FPGA||ZYNQ概念理解之: Cortex-A9 处理器及架构
-
源起
Zynq系列的亮点在于FPGA里包含了完整的ARM处理子系统(PS),每一颗Zynq系列的处理器都包含了Cortex-A9处理器,整个处理器的搭建都以处理器为重心,而且处理器子系统中继承了内存控制器和大量的外设,使Cortex-A9的核在Zynq-7000中完全独立于可编程逻辑单元,也就是说如果暂时没有用到可编程逻辑单元(PL),ARM处理器的子系统也可以独立工作,这与以前的FPGA有本质区别,其是以处理器为核心的。
关于
ZYNQ
、ARM
、PS
、PL
已在上文《概念理解:ZYNQ
、PS
、PL
、APU
、ARM
、SOC
、URAT、GPIO…》分析,本文主要为理解Cortex-A9
是什么? -
Cortex
ARM
公司在经典处理器ARM11
以后的产品改用Cortex
命名,并分成A、R、M
三类,旨在为各种不同的市场提供服务。Cortex系列
属于ARMv7
架构,这是到2010
年为止ARM
公司最新的指令集架构。简单来说,
Cortex
就是ARM
公司一个系列处理器的名称,就像英特尔
旗下处理器有酷睿
、奔腾
、赛扬
。 -
ARMv7
ARMv7
架构的Cortex
处理器系列所采用的技术也不相同:- 基于
v7A
的称为Cortex-A
系列; - 基于
v7R
的称为Cortex-R
系列; - 基于
v7M
的称为Cortex-M
系列;
- 基于
-
ARMv8架构
2011
年11
月,ARM公司发布了新一代处理器架构ARMv8
的部分技术细节。这是ARM公司的首款支持64
位指令集的处理器架构。由于
ARM处理器
的授权内核被广泛用于手机等诸多电子产品,故ARMv8架构
作为下一代处理器的核心技术而受到普遍关注。ARM
在2012
年间推出基于ARMv8架构
的处理器内核
并开始授权,而面向消费者和企业的样机于2013
年由苹果的A7处理器
上首次运用。 -
关于处理器的架构
所谓处理器架构就是
CPU
厂商给属于同一系列的CPU产品定的一个规范,主要目的是为了区分不同类型CPU
的重要标示。目前市面上的CPU指令集分类主要有两大阵营:-
Intel
、AMD
为首的复杂指令集CPU; -
IBM
、ARM
为首的精简指令集CPU;
不同品牌的
CPU
,其产品的架构也不相同:-
x86
:Intel、AMD
-
PowerPC
:IBM
ARM:ARM
-
-
Cortex-A9
ARM Cortex-A9
采用ARMv7-A
架构,目前我们能见到的四核处理器大多都是属于Cortex-A9
系列。Cortex-A9
处理器的设计旨在打造最先进的、高效率的、长度动态可变的、多指令执行超标量体系结构,提供采用乱序猜测方式执行的 8 阶段管道处理器,凭借范围广泛的消费类、网络、企业和移动应用中的前沿产品所需的功能,它可以兼具高性能和高能效。Cortex-A9
微体系结构既可用于可伸缩的多核处理器
(Cortex-A9 MPCore
多核处理器),也可用于更传统的处理器(Cortex-A9
单核处理器)。可伸缩的多核处理器和单核处理器支持
16
、32
或64KB
4 路
关联的L1
高速缓存配置,对于可选的L2
高速缓存控制器,最多支持8MB
的L2
高速缓存配置,它们具有极高的灵活性,均适用于特定应用领域和市场。 -
References
- ARMv8架构 百度百科
- ARM Cortex A9 百度百科
- ARM Cortex-A系列(A53、A57、A73等)处理器性能分类与对比