新闻  |   论坛  |   博客  |   在线研讨会
关于 ARM7TDMI 核心概述分析
北京123 | 2026-03-20 13:28:27    阅读:62   发布文章

ARM7™ 核心是一款 32 位精简指令集计算机(RISC)。它使用单条 32 位总线用于指令和数据传输。数据长度可为 8 位、16 位或 32 位,而指令字长固定为 32 位。

ARM7TDMI 是基于 ARM7 核心的扩展版本,包含四项附加功能:

T:支持 Thumb(16 位)指令集;

D:支持调试功能;

M:支持长乘法运算;

I:集成 EmbeddedICE 模块,以支持嵌入式系统调试。

Thumb 模式 (T)

标准 ARM 指令长度为 32 位。ARM7TDMI 处理器额外支持一套压缩至 16 位的指令集,称为“Thumb”指令集。通过使用 Thumb 指令集替代完整的 ARM 指令集,可实现更快的 16 位内存执行速度及更高的代码密度,这使得 ARM7TDMI 核心特别适合嵌入式应用。

然而,Thumb 模式存在两个局限性:

完成相同任务时,Thumb 代码通常需要更多指令;

Thumb 指令集不包含异常处理所需的部分指令——当发生异常时,处理器会自动切换回 ARM 模式进行异常处理。

有关核心架构、编程模型以及 ARM 与 ARM Thumb 指令集的详细信息,请参阅《ARM7TDMI 用户指南》。

长乘法 (M)

ARM7TDMI 指令集包含四条额外指令,用于执行以下操作:

32 位 × 32 位乘法,结果为 64 位;

32 位 × 32 位乘加运算(MAC),结果也为 64 位。

这些运算在比标准 ARM7 核心更少的时钟周期内即可完成。

EmbeddedICE (I)

EmbeddedICE 提供片上调试支持。其模块内含断点寄存器和观察点寄存器,允许代码暂停以供调试之用。这些寄存器可通过 JTAG 测试端口控制。

当遇到断点或观察点时,处理器将 halted 并进入调试状态。在调试状态下,可检查处理器寄存器、Flash/EE、SRAM 及内存映射寄存器的内容。

异常处理

ARM 支持五种类型的异常,并为每种类型提供特权处理模式:

普通中断(IRQ):用于服务内部和外部事件的一般性中断处理。

快速中断(FIQ):用于低延迟的数据传输或通信通道服务。FIQ 优先级高于 IRQ。

存储器中止(Memory abort)

未定义指令尝试执行

软件中断指令(SWI):可用于调用操作系统服务。

通常,程序员将中断定义为 IRQ;但对于需要更快响应时间的高优先级中断,也可将其定义为 FIQ。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
分享电子元件知识!还是一家一站式电子元件供应商哟!
推荐文章
最近访客