Cortex-A7 MPCore 架构
1)Cortex-A7 MPCore 简介
Cortex-A7 MPcore 处理器支持 1~4 核,通常是和 Cortex-A15 组成 big.LITTLE 架构的,Cortex-A15 作为大核负责高性能运算,比如玩游戏啥的, Cortex-A7 负责普通应用,因为 CortexA7 省电。 Cortex-A7 本身性能也不弱,不要看它叫做 Cortex-A7 但是它可是比 Cortex-A8 性能 要强大,而且更省电,如图8-20所示。
在 28nm 工艺下, Cortex-A7 可以运行在 1.2~1.6GHz,并且单核面积不大于 0.45mm 2 ( 含有浮点单元、 NEON 和 32KB 的 L1 缓存 ),在典型场景下功耗小于 100mW,这使得它非常适 合对功耗要求严格的移动设备,这意味着 Cortex-A7 在获得与 Cortex-A9 相似性能的情况下,其功耗更低。
图8-20 多核配置图
Cortex-A7 MPCore 的 L1 可选择 8KB 、 16KB 、 32KB 、 64KB, L2 Cache 可以不配,也可以选择 128KB 、 256KB 、 512KB 、 1024KB 。 I.MX6UL 配置了 32KB 的 L1 指令 Cache 和 32KB 的L1 数据 Cache,以及 128KB 的 L2 Cache 。 Cortex-A7MPCore 使用 ARMv7-A 架构,主要特性如下:
①SIMDv2 扩展整形和浮点向量操作。
②提供了与 ARM VFPv4 体系结构兼容的高性能的单双精度浮点指令,支持全功能的IEEE754 。
③支持大物理扩展 (LPAE),最高可以访问 40 位存储地址,也就是最高可以支持 1TB 的内存。
④支持硬件虚拟化。
⑤支持 Generic Interrupt Controller(GIC)V2.0 。
⑥支持 NEON,可以加速多媒体和信号处理算法。
2)Cortex-A 寄存器组
ARM 架构提供了 16 个 32 位的通用寄存器 (R0~R15) 供软件使用,前 15 个 (R0~R14) 可以用作为通用的数据存储, R15 是程序计数器 PC,用来保存将要执行的指令。 ARM 还提供了一个当前程序状态寄存器 CPSR 和一个备份程序状态寄存器 SPSR, SPSR 寄存器就是 CPSR 寄存器的备份。
接地址。这里要区分“存储地址”和“运行地址”这两个概念,“存储地址”就是可执
行文件存储在哪里,可执行文件的存储地址可以随意选择。“运行地址”就是代码运行的时候所处的地址,这个在链接的时候就已经确定好了,代码要运行,那就必须处于运行地址
处,否则代码肯定运行出错。