第2章 多核ARM体系结构资料
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据通道 输入 输出
数据
数据0 数据1 数据2
中央处理器
冯· 诺依曼体系的特点
1)数据与指令都存储在存储器中
2)被大多数计算机所采用
3)ARM7——冯诺依曼体系
2、哈佛体系结构
地址 程序存储器
指令寄存器
指令0
控制器
指令
指令1 指令2
地址 数据通道 输入 中央处理器 输出
数据存储器
数据0
数据
数据1 数据2
持。ARMv8-A 体系结构增加了密码扩展作为可选功能。
ARM 处理器体系结构
1. Thumb
Thumb 可向设计人员提供:
卓越的代码密度,可实现最小的系统内存大小和最低的成本。 在 8 位或 16 位总线上的 8 位或 16 位内存中实现 32 位性能, 从而降低系统成本。 设计人员可以同时使用 16 位 Thumb 和 32 位 ARM 指令集,
8、总线和总线桥
CPU
低速设备
高速总线
桥
低速总线
存储器
高速设备
数据
高速设备
32位多AHB总线矩阵
9、存储器系统
RAM:随机存取存储器 SRAM:静态随机存储器 DRAM:动态随机存储器 1)SRAM比DRAM快
CS
R/W Addr Data
SRAM
2)SRAM比DRAM耗电多
3)DRAM存储密度比SRAM高得多 4)DRAM需要周期性刷新 ROM:只读存储器 FLASH:闪存
Decode
Execute
PC指向正被取指的指令,而非正在执行的指令
6、超标量执行
超标量(superscalar)CPU采用多条流水线结构。超标量 CPU架构是指在一颗处理器内核中实行了指令级并行的一类并行 运算,如图2-4所示。这种技术能够在相同的CPU主频下实现更 高的CPU吞吐率(throughput)。
序执行指令,然后由重新排列单元将各执行单元结果按
指令顺序重新排列。
11. 分支预测
(1)静态分支预测
最简单的静态分支预测方法就是任选一条分支。这样平均
命中率为50%。更精确的办法是根据原先运行的结果进行统计从 而尝试预测分支是否会跳转。 任何一种分支预测策略的效果都取决于该策略本身的精确度 和条件分支的频率。
哈佛体系结构的特点
1)程序存储器与数据存储器分开 2)提供了较大的数存储器带宽 3)适合于数字信号处理 4)大多数DSP都是哈佛结构 5)ARM9是哈佛结构
3、CISC:复杂指令集(Complex Instruction Set Computer)
具有大量的指令和寻址方式
8/2原则:80%的程序只使用20%的指令
为增加处理器指令流的速度,ARM7 系列使用3级流水线. 允许多个操作同时处理,而非顺序执行。
ARM
PC
Thumb
PC
Fetch
从存储器中读取指令 解码指令中用到的寄存器 寄存器读(从寄存器Bank) 移位及ALU操作 寄存器写(到寄存器Bank )
PC - 4 PC-2 PC - 8 PC - 4
(2)动态分支预测
动态分支预测是近来的处理器已经尝试采用的的技术。最简
单的动态分支预测策略是分支预测缓冲区(Branch Prediction
Buff)或分支历史表(branch history table)。
2.2 ARM 处理器 体系结构
现代ARM 处理器体系结构
ARM 体系结构支持跨跃多个性能点的实现,并已在许多 细分市场中成为主导的体系结构。ARM 体系结构支持非常广泛
增加了一些新的32位Thumb指令以实现一些ARM指令的专
有功能,32位的ARM指令也得到了扩充; 增加了一些新的指令来改善代码性能和数据处理的效率,给 Thumb指令集增加32位指令,就解决了之前Thumb指令集不能 访问协处理器、特权指令和特殊功能指令的局限。 新的Thumb-2指令集现在可以实现所有的功能,这样就
这样,他们就可以灵活地根据应用需求在子例程级别上增强性
能或调整代码大小。 Thumb ISA 受 ARM 生态系统的广泛支持,包括完善的 Windows 软件开发环境以及开发和评估卡。
2. Thumb-2
Thumb-2指令集在原有Thumb指令的基础上做了如下的扩充: 增加了一些新的16位Thumb指令来改进程序的执行流程;
指令CACHE
预取
预取
流 水 线 1
译码1 译码2 执行1 执行2
流 水 线 2
译码1 译码2 执行1 执行2
数据
7、高速缓存(CACHE)
高速缓 存控制 器
数据
CACHE 主存
CPU
地Fra Baidu bibliotek 数据
当CPU处理数据时,它会先到Cache中去寻找,如果数据因 之前的操作已经读取而被暂存其中,就不需要再从随机存取存储 器(Main memory)中读取数据——由于CPU的运行速度一般比 主内存的读取速度快,主存储器周期(访问主存储器所需要的时 间)为数个时钟周期。因此若要访问主内存的话,就必须等待数 个CPU周期从而造成浪费。
大多数程序只使用少量的指令就能够运行。
4、RISC:精简指令集(Reduced Instruction Set Computer)
在通道中只包含最有用的指令
确保数据通道快速执行每一条指令
使CPU硬件结构设计变得更为简单
5、流水线技术: 几个指令可以并行执行
提高了CPU的运行效率
内部信息流要求通畅流动
的性能点,因而可以利用最新的微体系结构技术获得极小的
ARM 处理器实现和极有效的高级设计实现。实现规模、性能和 低功耗是 ARM 体系结构的关键特性。 已经开发了体系结构扩展,从而为 Java 加速 (Jazelle®)、安 全性 (TrustZone®)、SIMD 和高级 SIMD (NEON™) 技术提供支
第 2章 多核ARM体系结构
目 录
2.1 微处理器的体系结构基础
2.2 ARM 处理器体系结构 2.3 Cortex-A9 处理器体系结构
2.1 微处理器的体系结构基础
一、经典ARM 处理器体系结构
1.1 硬件基础
诺依曼体系结构模型 1、冯·
存储器
指令寄存器 控制器
程序 指令0 指令1 指令2 指令3 指令4
CS
R/W RAS CAS Addr Data
DRAM
10. 乱序执行
乱序执行(out-of-orderexecution):是指CPU允许 将多条指令不按程序规定的顺序分开发送给各相应电路
单元处理的技术。这样将根据个电路单元的状态和各指
令能否提前执行的具体情况分析后,将能提前执行的指
令立即发送给相应电路单元执行,在这期间不按规定顺