嵌入式系统原理与应用 课件 第2章 ARM Cortex-M3处理器2_第1页
嵌入式系统原理与应用 课件 第2章 ARM Cortex-M3处理器2_第2页
嵌入式系统原理与应用 课件 第2章 ARM Cortex-M3处理器2_第3页
嵌入式系统原理与应用 课件 第2章 ARM Cortex-M3处理器2_第4页
嵌入式系统原理与应用 课件 第2章 ARM Cortex-M3处理器2_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式系统设计西安邮电大学计算机学院王忠民第二章ARMCortex-M3微处理器结构目录ARMCortexM3体系结构概述CortexM3的组成寄存器阵列存储器系统中断与异常第二章ARMCortex-M3微处理器体系结构---ARMCortexM3体系结构基本概念ARM架构(V1-V9)V7对应指令系统CortexM3IP核对应不同的软核STM32F103系列微控制器芯片对应不同的微控制器芯片第二章ARMCortex-M3微处理器体系结构--CortexM3内核整体结构框架CortexM3内核由四部分组成:处理器核(ProcessorCoreSystem)—包括CPU、NVIC(NestedVectoredInterruptController)、存储器接口单元(MemoryInterface)、跟踪接口单元(TraceInterface)内存保护单元(MemoryProtectionUnit--MPU)---可选内部总线接口(BusInterconnect)为了方便跟踪和调试的可选的TraceSystem和DebugIntertface单元组成Trace第二章ARMCortex-M3微处理器体系结构--CortexM3内核整体结构框架Cortex-M3的三级流水线PC指针始终指向取指阶段由于流水线的存在,以及出于对Thumb代码兼容的考虑,读取PC会返回当前执行指令的地址+4的值。这个偏移量总是4,不管是执行16位指令还是32位指令,这就保证了在Thumb和Thumb2之间的一致性。Cortex-M3的三级流水线TraceALU:ArithmeticLogicUnit寄存器组:RegisterBank译码器:Decoder取指令单元:InstructionFetchUnit嵌套向量中断控制器NVIC:NestedVectoredInterruptController存储器接口:MemoryInterface跟踪接口:TraceSystem第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构1.处理器核(ProcessorCoreSystem)TraceCortex‐M3有一个可选的存储器保护单元。配上它之后,就可以对特权级访问和用户级访问分别施加不同的访问限制。当检测到犯规(violated)时,MPU就会产生一个fault异常,可以由fault异常的服务例程来分析该错误,并且在可能时改正它。

MPU有很多玩法。最常见的就是由操作系统使用MPU,以使特权级代码的数据,包括操作系统本身的数据不被其它用户程序弄坏。MPU在保护内存时是按区管理的。它可以把某些内存region设置成只读,从而避免了那里的内容意外被更改;还可以在多任务系统中把不同任务之间的数据区隔离。一句话,它会使嵌入式系统变得更加健壮,更加可靠(很多行业标准,尤其是航空的,就规定了必须使用MPU来行使保护职能)第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构2.内存保护单元(MemoryProtectUmit)Trace这部分内容是给SoC设计师看的。如果你不是他们,你是不能直接访问这里讲到的到总线接口的。但是,开发者是要知道4G地址空间上的存储器、片上外设的寄存器等资源是挂到哪些总线上的,这些总线各自有什么特点。通常情况下,芯片厂商都会钩住(hook

up)所有送往存储器和外设的总线信号。并且在少数情况下,你会发现芯片厂商把总线连接到了总线桥上,并且允许外部总线系统连接到芯片上。CM3处理器的总线接口是基于AHB‐Lite(AdvancedHigh-performanceBusLite)

和APB(AdvancedPeripheralBus)

协议的,它们的规格在AMBA(AdvancedMicrocontrollerBusArchitecture)规格书中给出第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构3.内部总线接口(BusInterconnect)TraceARM相关接口协议概念:AHB-Lite:AHB-Lite是一种轻量级版本的高性能总线协议,用于连接高性能设备(如处理器、高速存储器等)。它提供了一种高效的数据传输机制,支持高带宽和低延迟的数据传输。AHB-Lite总线通常用于连接处理器核心和其他高性能设备。APB:APB是一种较慢的外设总线,用于连接低速外设(如定时器、GPIO控制器等)。APB总线相对于AHB-Lite总线的优势在于其简单性和低成本。APB总线通常用于连接外设和低速控制器,不需要高带宽和低延迟的数据传输。AMBA(AdvancedMicrocontrollerBusArchitecture)规范是由ARM公司提出的一系列总线协议和接口标准。它定义了一套用于片上系统(SoC)中处理器、内存、外设和其他系统组件之间通信的标准接口和数据传输规范。AMBA规范包括多个版本,其中最常见的是AMBA2.0、AMBA3.0和AMBA4.0。每个版本都有不同的特性和功能,以满足不同的系统需求。AMBA规范描述了总线的信号、传输协议、时序要求以及连接和交互的规则,为设计者提供了一个统一和可互操作的通信框架。通过遵循AMBA规范,系统设计者可以更容易地集成和连接不同的IP核和硬件模块,实现高效、可靠的数据传输和通信。AMBA规范被广泛应用于ARM架构的SoC设计中,并为片上系统的设计提供了标准化的解决方案。第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构3.内部总线接口(BusInterconnect)TraceI-Code总线

I‐Code总线是一条基于AHB‐Lite总线协议的32位总线,负责在0x0000_0000

–0x1FFF_FFFF之间的取指操作。取指以字的长度执行,即使是对于16位指令也如此。因此CPU内核可以一次取出两条16位Thumb指令。D-Code总线

D‐Code总线也是一条基于AHB‐Lite总线协议的32位总线,负责在0x0000_0000

–0x1FFF_FFFF之间的数据访问操作。尽管CM3支持非对齐访问,但你绝不会在该总线上看到任何非对齐的地址,这是因为处理器的总线接口会把非对齐的数据传送都转换成对齐的数据传送。因此,连接到D‐Code总线上的任何设备都只需支持AHB‐Lite的对齐访问,不需要支持非对齐访问。第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构3.内部总线接口(BusInterconnect)系统总线

系统总线也是一条基于AHB‐Lite总线协议的32位总线,负责在0x2000_0000

–0xDFFF_FFFF和0xE010_0000

0xFFFF_FFFF之间的所有数据传送,取指和数据访问都算上。和D‐Code总线一样,所有的数据传送都是对齐的。私有外设总线这是一条基于APB总线协议的32位总线。此总线来负责0xE0040000

0xE00F_FFFF之间的私有外设访问。但是,由于此APB存储空间的一部分已经被TPIU、ETM以及ROM表用掉了,就只留下了0xE004_2000‐E00F_F000这个区间用于配接附加的(私有)外设。调试访问端口总线

调试访问端口总线接口是一条基于“增强型APB规格”的32位总线,它专用于挂接调试接口,例如SWJ‐DP和SW‐DP。第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构3.内部总线接口(BusInterconnect)

TraceSystem(跟踪系统):Cortex-M3处理器的TraceSystem支持实时跟踪功能,可以记录程序执行过程中的关键事件和信息,如指令执行、数据访问等。它提供了一种轻量级的追踪功能,可帮助开发人员分析程序性能、调试问题和优化代码。TraceSystem通常与调试器或跟踪设备配合使用,以便实时捕获和记录程序执行的相关信息。DebugInterface(调试接口):Cortex-M3处理器的DebugInterface系统用于与外部调试器或调试工具进行通信,以支持调试和监控处理器的运行状态。通过DebugInterface,开发人员可以在程序执行过程中暂停、单步执行、设置断点、查看寄存器状态等,有助于定位和解决代码中的问题。DebugInterface还提供了与处理器内部调试逻辑的接口,使得开发人员可以远程控制和监视处理器的行为。第二章ARMCortex-M3微处理器体系结构---Cortex‐M3内部结构4.跟踪与调试系统

(TraceSystem-DebugIntertface)TraceARMCortex-M3处理器结构堆栈指针和运行模式选择指令和数据总线均32位CPU:CM3ProcessorCoreSW-DP/SWJ-DPARMCortex-M3处理器的总线接口低速APBPC中南桥由MCU制造商(ST)设计高速AHBPC中北桥由内核设计者ARM公司设计本次课内容就介绍完了,同学们,再见!第2次作业(续第二次课作业)

1、查阅资料,总结Int

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论