ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt

ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt

ID:50083503

大小:632.50 KB

页数:113页

时间:2020-03-08

ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt_第1页
ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt_第2页
ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt_第3页
ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt_第4页
ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt_第5页
资源描述:

《ARM Cortex嵌入式系统开发教程 教学课件 ppt 作者 黄建华 全书第2章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章ARMCortex-M3体系结构2.1ARMCortex-M3编程模型2.2ARMCortex-M3寄存器组织2.3ARMCortex-M3存储器2.4ARMCortex-M3异常处理2.5NVIC与中断控制处理器的“体系结构”是指从程序员的角度观察到的处理器组织方式,所以又称为处理器的编程模型。其主要内容为处理器内的寄存器组织、对存储器的寻址方式、指令系统等。   本章将介绍ARMCortext-M3编程模型、工作状态与工作模式、ARM和Thumb状态的寄存器组织、存储器组织结构、异常及协处理器接口等一些基本概念,还将讲述ARM的编程基础,如ARM

2、微处理器的基本工作原理、与程序设计相关的基本技术细节等。2.1.1ARMCortex-M3处理器的编程模型ARMCortex-M3是ARM公司推出的下一代新生内核,它是一款低功耗处理器,具有门数目少、中断延迟短、调试成本低的特点,是为要求有快速中断响应能力的深度嵌入式应用而设计的。2.1ARMCortex-M3编程模型ARMCortex-M3CPU具有3级流水线、哈佛结构、独立的本地指令、数据总线以及用于外设的稍微低性能的第三条总线,可提供系统增强型特性,例如现代化调试特性和支持更高级别的块集成。ARMCortex-M3CPU还包含一个支持随机跳转的内部预

3、取指单元。Cortex-M3处理器采用ARMv7-M架构,它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架构。Cortex-M3处理器不能执行ARM指令。Thumb指令集是ARM指令集的子集,重新被编码为16位,它支持较高的代码密度以及16位或小于16位的存储器数据总线系统。Thumb-2在Thumb指令集架构(ISA)上进行了大量的改进,与Thumb相比,它的代码密度更高,并且通过使用16/32位指令,可提供更高的性能。Cortex-M3处理器整合了以下组件:(1)ARMv7-M处理器内核。Thumb-2ISA子集,包含所有基本的1

4、6位和32位Thumb-2指令、硬件除法指令、处理模式(HandlerMode)和线程模式(ThreadMode)、Thumb状态和调试状态、可中断-可继续(Interruptible-Continued)的LDM/STM及PUSH/POP,以实现低中断延迟,自动保存和恢复处理器状态,可实现低延迟地进入和退出中断服务程序(ISR)。(2)嵌套向量中断控制器(NVIC)。NVIC可与处理器内核紧密结合实现低延迟中断处理,并具有以下特性:外部中断可配置为1~240个,优先级位可配置为3~8位,中断优先级可动态地重新配置,优先级分为占先中断等级和非占先中断等级,

5、支持末尾连锁(Tail-Chaining)和迟来(LateArrival)中断。(3)存储器保护单元(MPU)。MPU功能可选,用于对存储器进行保护。(4)总线接口。包括AHBLiteICode、DCode和系统总线接口,APB专用外设总线(PPB)接口,支持bit-band方式的原子写和读访问。(5)低成本调试解决方案。当内核正在运行、被中止或处于复位状态时,能对系统中包括Cortex-M3寄存器组在内的所有存储器和寄存器进行调试访问;支持串行线(SW-DP)或JTAG(JTAG-DP)调试访问;支持Flash修补和断点单元(FPB),实现断点和代码修补

6、;支持数据观察点和触发单元(DWT),实现观察点、触发资源和系统分析(Systemprofiling);实现了仪表跟踪宏单元(ITM),支持对printf类型的调试;提供跟踪端口的接口单元(TPIU),用来连接跟踪端口分析仪;提供可选的嵌入式跟踪宏单元(ETM),实现指令跟踪。Cortex-M3处理器的内核模块框图如图2.1所示。图2.1ARMCortex-M3内核模块框图Cortex-M3处理器专门针对快速和简单的编程而设计,用户无需深厚的架构知识或编写任何汇编代码就可以建立简单的应用程序。Cortex-M3处理器带有一个简化的基于栈的编程模型,该模型与

7、传统的ARM架构兼容,Cortex-M3与传统的8位、16位架构所使用的系统相似,它简化了8位、16位到32位的转换过程。此外,使用基于硬件的中断机制意味着编写中断服务程序(handlers)不再重要。在不需要汇编代码寄存器操作的情况下,启动代码得到了大大的简化。在位字段处理、硬件除法和If/Then指令的协助下,Thumb-2指令集架构(InstructionSetArchitecture,ISA)底层的关键特性使C代码的执行变得更加自然。在开发方面,Thumb-2指令自动优化了性能和代码密度,在无需交互使用ARM代码和Thumb代码的情况下加快了开发的

8、进程,简化了编译目标的长期维护和支持工作。如此一来,用户不但可以继

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。