https://www.bilibili.com/video/BV18b411L7Zd
arm 体系结构
- 嵌入式微处理器及其应用
- ARM 体系结构概述
- ARM 体系编程模型
- ARM JTAG 调试接口
嵌入式微处理器及其应用
几乎所有的处理器芯片均位于嵌入式应用系统中。
SOC:嵌入式处理器核 + 专用处理器核 + 模拟功能单元 + 传感器
ARM 体系结构概述
ARM:Advanced RISC Machines
ARM v7 是一种构架。 ARM7 是一种处理器型号, ARM7 是在 ARM v4构架上设计出来的处理器 arm7 是一种 arm 内核型号,也就是 arm v4;拥有 arm 和thumb两个指令集;
- 第一个 ARM 原型在 Acorn 计算机有限公司诞生;
- 20 世纪 90 年代,ARM32 位嵌入式 RISC 处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位;
- 广泛应用到通信、手持计算、多媒体数字消费等嵌入式解决方案;
- 1991 - 第一款 RISC 嵌入式微处理器核 ARM6
- 1993 - ARM7核
- 1995 - ARM 步入 32 位数据长度;
ARM 处理器的特点:
- 小体积、低功耗、成本低、高性能;
- 16位 / 32位双指令集;
ARM 体系结构的扩充:
- Thumb:16 位指令集,32 位 ARM 指令集的子集,按 16 位指令重新编码;
- DSP:用于 DSP 应用的算术运算指令集;
- Jazeller:允许直接执行 Java 代码的扩充;
ARM 体系编程模型
ARM 体系结构:
- 大量的寄存器,都可用于多种用途;
- Load-Store 体系结构;
- 3 地址指令
- 每条指令都条件执行包含非常强大的多寄存器 Load 和 Store 指令;
- 能在单时钟周期执行的单条指令内完成一项普通的移位操作或一项普通的ALU操作;
- 能通过协处理器指令集来扩展 ARM 指令集;
- 在 Thumb 体系结构中以高密度 16位压缩形式表示指令集;
ARM7 TDMI 处理器
- 3 级流水:取指、译码、执行
- 有两种操作状态:ARM-32bit 按字排列的 ARM 指令集、Thumb-16bit 按半字排列的 Thumb 指令集;
- 通过 BX 指令,切换 ARM 状态和 Thumb 状态;
- 存储模式:大端小端兼容,引脚制定;
- 操作模式:
- 用户模式:正常的程序执行模式;
- 快速中断模式:支持高速数据传输或通道处理;
- 中断模式:用于通用中断处理;
- 管理员模式:操作系统的保护模式;
- 中止模式:支持虚拟内存,内存保护;
- 系统模式:运行操作系统任务;
- 未定义模式:
- 寄存器模式:31 个通用 32位 寄存器、6 个状态寄存器、15 个通用寄存器(R0-R14)
ARM 9 采用五级流水,效率更高,同时采用哈式结构,效率更高。
JTAG:Joint Test Action Group,使得集成电路固定在 PCB 上,只通过边界扫描便可以被测试;
- TMS
- TCK
- TDI
- TDO
- nTRST
典型芯片
Samsung S3C44B0X
cache 实现的四个问题:
cache 块在cache中放在哪里?
Set Associative、Fully Associative、Direct Mapped
命中时,在cache中的块如何查找?
Tag、block
失配时哪个块被替换出 cache?
LRU、Random、FIFO
命中时该如何写?
Write Through、Write Back
Xscale-255 微处理器