
CortexM处理器简介实用实用教案.ppt
24页•1.1Cortex-M3处理器特点•1.2Cortex-M3处理器基本( jīběn)结构•1.3STM32系列处理器第1页/共23页第一页,共24页1.1Cortex-M3处理器特点(tèdiǎn)•基于哈佛架构( jiàɡòu)的3级流水线内核•Thumb-2指令集•嵌套矢量中断控制器(NVIC)•存储器保护单元(MPU)•ARMCoreSight调试跟踪体系结构第2页/共23页第二页,共24页1.2Cortex-M3处理器基本(jīběn)结构•处理器核Cortex-M3•NVIC•BusMatrix•FPB(FlashPatchandBreakpoint)•DWT•ITM•MPU•ETM•TPIU•SW/SWJ-DP第3页/共23页第三页,共24页第4页/共23页第四页,共24页Cortex-M3核的主要(zhǔyào)特点•使用Thumb-2指令集,集Thumb指令集和ARM指令集优点于一体;•采用Harvard结构,同时存取指令和数据;三段流水线;•可在单周期内完成32位乘法;硬件除法;•有Thumb和Debug两种操作(cāozuò)状态;•有Handler和Thread两种操作(cāozuò)模式;•快速进入和退出中断服务程序;•可中断连续LDM/STM、PUSH/POP指令;•支持ARMv6类型的BE8/LE;•支持ARMv6非对齐访问。
第5页/共23页第五页,共24页嵌套矢量中断(zhōngduàn)控制器(NestedVectoredInterruptController,NVIC)特点•外部中断数量可配置为从1到240个;•用来表示优先权等级的位数可配置为从3到8;•支持电平触发和脉冲触发中断;•中断优先级可动态重置;•支持优先权分组;•支持尾链技术;•进入(jìnrù)和退出中断无需指令,中断进入(jìnrù)时可自动保存处理器状态,退出时可自动恢复处理器状态;第6页/共23页第六页,共24页BusMatrix•Busmatrix有如下外部总线接口:•Icode总线:从代码空间预取指令及向量;•DCode总线:从代码空间存取数据或进行调试访问;•System总线:从系统空间预取指令及向量、存取数据或进行调试访问;•PPB总线:用于从系统空间存取数据或进行调试访问,•Busmatrix负责实现以下控制:•非对齐访问;•位操作:控制由位段别名到位段区域(qūyù)的转换访问;•写缓冲第7页/共23页第七页,共24页FPB(FlashPatchandBreakpoint)FPB有8个比较器,用来实现从代码空间到系统空间的转换访问和硬件断点:6个可独立配置(pèizhì)的指令比较器,用于转换从代码空间到系统空间的指令预取,或执行硬件断点;2个常量比较器用于转换从代码空间到系统空间的常量访问。
第8页/共23页第八页,共24页数据观测(guāncè)与跟踪单元(DataWatchpointandTrace、DWT)•DWT有4个比较器可配置为硬件(yìnɡjiàn)断点、ETM触发器、PC采样事件触发器或数据地址采样触发器;•DWT有几个计数器或数据匹配事件触发器用于性能剖析;•DWT可配置用于在定义的时间间隔发出PC采样信息,而且可发出中断事件信息第9页/共23页第九页,共24页测量(cèliáng)跟踪宏单元(InstrumentationTraceMacrocell,ITM)•软件跟踪(gēnzōng):软件可直接写ITM单元内部的激励寄存器,使之向外发送相关信息包;•硬件跟踪(gēnzōng):DWT产生信息包,由ITM向外发送;•时间戳:ITM可产生与所发送信息包相关的时间戳包,并向外发送第10页/共23页第十页,共24页存储器保护(bǎohù)单元(MemoryProtectionUnit,MPU)•MPU提供以下支持:•存储保护;保护区域(qūyù)重叠;•访问允许控制;向系统传递存储器属性•通过以上支持,MPU可:•实现存储管理优先规则;•分离存储过程;•实现存储访问规则。
第11页/共23页第十一页,共24页嵌入式跟踪(gēnzōng)宏单元(EmbeddedTraceMacrocell,ETM)•TPIU单元是ITM单元、ETM单元与片外跟踪分析器之间传递跟踪数据的桥梁•TPIU单元兼容( jiānrónɡ)CoreSight调试体系结构第12页/共23页第十二页,共24页SW/SWJ-DP•对于此调试接口,外部调试口有两种可能的实现方法(fāngfǎ):•串行JTAG调试接口SWJ-DP:SWJ-DP是一个结合JTAG-DP和SW-DP的标准CoreSight调试口;•SW-DP调试口:该调试口通过两个引脚(clock+data)实现与处理器内部AHB-AP的接口第13页/共23页第十三页,共24页1.3STM32系列(xìliè)处理器•1.3.1STM32处理器的分类•1.3.2STM32F10x处理器的内部结构•1.3.3STM32系列(xìliè)MCU的优点•1.3.4STM32处理器开发工具第14页/共23页第十四页,共24页1.3.1STM32处理器的分类(fēnlèi)•STM32F1系列处理器目前分为5个子(gèzi)系列•STM32F100-24MHzCPUwithmotorcontrol•STM32F101是标准型系列,工作在36MHz;upto1MbyteFlash•STM32F102-48MHzCPUwithUSBFS•STM32F103是增强型系列,工作在72MHz,带有更多片内RAM和更丰富的外设。
upto1MbyteFlashwithmotorcontrol,USBandCAN•STM32F105/107-72MHzCPUwithEthernetMAC,CANandUSB2.0OTG第15页/共23页第十五页,共24页第16页/共23页第十六页,共24页Cortex-M3结构(jiégòu)简图第17页/共23页第十七页,共24页1.3.2STM32F10x处理器的内部结构第18页/共23页第十八页,共24页基本型与增强型配置(pèizhì)的差异第19页/共23页第十九页,共24页1.3.3STM32系列(xìliè)MCU的优点•先进的内核结构:STM32系列使用了ARM最新的、先进架构的Cortex-M3内核•优秀的功耗控制:STM32处理器具有三种低功耗模式(móshì)和灵活的时钟控制机制,用户可以根据自己所需的耗电/性能要求进行合理的优化第20页/共23页第二十页,共24页1.3.3STM32系列(xìliè)MCU的优点•性能出众而且功能创新的片上外设:STM32处理器片上外围的优势来源于双APB总线结构,其中有一个高速APB(速度可达CPU的运行频率),连接到该总线上的外设能以更高的速度运行。
针对MCU应用中最常见的电机控制,STM32对片上外围设备进行(jìnxíng)一些功能创新•高度的集成整合:STM32处理器最大程度地实现集成,尽可能地减少对外部器件的要求•易于开发,可使产品快速进入市场第21页/共23页第二十一页,共24页1.3.4STM32处理器开发工具第22页/共23页第二十二页,共24页感谢您的欣赏(xīnshǎng)!第23页/共23页第二十三页,共24页内容(nèiróng)总结1.1 Cortex-M3 处理器特点进入和退出中断无需指令,中断进入时可自动保存处理器状态,退出时可自动恢复处理器状态6 个可独立配置(pèizhì)的指令比较器,用于转换从代码空间到系统空间的指令预取,或执行硬件断点2 个常量比较器用于转换从代码空间到系统空间的常量访问对于此调试接口,外部调试口有两种可能的实现方法:高度的集成整合:STM32 处理器最大程度地实现集成,尽可能地减少对外部器件的要求感谢您的欣赏第二十四页,共24页。
