2- ARM Cortex-M体系结构

2.1 ARM Cortex 体系架构概述

ARM公司在经典处理器ARM11以后的产品都改用Cortex命名,主要分成A、R和M三类,旨在为各种不同的市场提供服务,A 系列处理器面向尖端的基于虚拟内存的操作系统和用户应用;R系列处理器针对实时系统;M系列处理器针对微控制器。

2.1.1 CISC和RISC

指令的强弱是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构来讲,指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分。
1.CISC机器
CISC体系的指令特征为使用微代码,计算机性能的提高往往是通过增加硬件的复杂性来获得的。
优点:指令丰富,功能强大,寻址方式灵活,能够有效缩短新指令的微代码设计时间,允许设计师实现CISC体系机器的向上相容。
缺点:指令集及晶片的设计比上一代产品更复杂,不同的指令需要不同的时钟周期来完成,执行较慢的指令,将影响整台机器的执行效率。
2.RISC机器
RISC体系的指令特征:RISC包含简单、基本的指令,这些简单、基本的指令可以组合成复杂指令。
优点:在使用相同的晶片技术和相同运行时钟下,RISC系统的运行速度是CISC系统的运行速度的2~4倍。由于RISC处理器的指令集是精简的,它的存储管理单元、浮点单元等都能设计在同一块芯片上。
缺点:多指令的操作使得程式开发者必须小心地选用合适的编译器,而且编写的代码量会变得非常大。另外就是RISC处理器需要更快的存储器,并将其集成于处理器内部,如一级缓存(L1 Cache)。
2- ARM Cortex-M体系结构_第1张图片

2.1.2ARM体系结构类型

2- ARM Cortex-M体系结构_第2张图片
2- ARM Cortex-M体系结构_第3张图片

2.2 Cortex-M4内核基础

2- ARM Cortex-M体系结构_第4张图片
32-bit微控制器: 32-bit 寄存器组、存储器接口。
哈佛架构:独立的指令总线和数据总线。
存储空间:4GB。
寄存器:寄存器 (R0 到 R15) 和 特殊功能寄存器。
运行模式:线程模式和处理模式;特权级和用户级。
中断和异常:内置嵌套向量中断控制器;支持11 种系统异常外加240 种外部 IRQ。
总线接口:若干总线接口允许 Cortex-M4 同时取指令和取数据。
MPU:一个可选的存储器保护单元允许对特权访问和用户程序访问制定访问规则。
指令集:Thumb-2 指令集;允许 32位指令和16位指令被同时使用。
内部调试组件:提供在线调试功能,例如:断点、单步、变量查看。

2- ARM Cortex-M体系结构_第5张图片
2- ARM Cortex-M体系结构_第6张图片
2- ARM Cortex-M体系结构_第7张图片
2- ARM Cortex-M体系结构_第8张图片
2- ARM Cortex-M体系结构_第9张图片
2- ARM Cortex-M体系结构_第10张图片
2- ARM Cortex-M体系结构_第11张图片
2- ARM Cortex-M体系结构_第12张图片
2- ARM Cortex-M体系结构_第13张图片
2- ARM Cortex-M体系结构_第14张图片
2- ARM Cortex-M体系结构_第15张图片
2- ARM Cortex-M体系结构_第16张图片
2- ARM Cortex-M体系结构_第17张图片
2- ARM Cortex-M体系结构_第18张图片
2- ARM Cortex-M体系结构_第19张图片
2- ARM Cortex-M体系结构_第20张图片
2- ARM Cortex-M体系结构_第21张图片
2- ARM Cortex-M体系结构_第22张图片
2- ARM Cortex-M体系结构_第23张图片
2- ARM Cortex-M体系结构_第24张图片
2- ARM Cortex-M体系结构_第25张图片

2.3 存储器系统

Cortex-M4内核的存储器系统的主要特性如下:
(1)可寻址4GB线性地址物理空间。
(2)支持小端和大端的存储器系统。Cortex-M4处理器可以选择使用小端或者大端的存储器系统。
(3)位段访问。
(4)写缓冲。对可缓冲存储器区域写操作需要花费几个周期时间,Cortex-M4处理器的写缓冲可以把写操作缓存起来,因此处理器可以继续执行下一条指令,从而提高了程序的执行速度。
(5)存储器保护单元(MPU)。MPU定义了各存储器区域的访问权限,且为可编程。Cortex-M4处理器中的MPU支持8个可编程区域,可在嵌入式操作系统中提高系统的健壮性。Cortex-M4处理器中的MPU是可选的。多数应用不会用到MPU,可以忽略。
(6)非对齐传输支持。ARMv7-M架构的所有处理器(包括Cortex-M4处理器)支持非对齐传输。
2- ARM Cortex-M体系结构_第26张图片
2- ARM Cortex-M体系结构_第27张图片
2- ARM Cortex-M体系结构_第28张图片
2- ARM Cortex-M体系结构_第29张图片
2- ARM Cortex-M体系结构_第30张图片
2- ARM Cortex-M体系结构_第31张图片
2- ARM Cortex-M体系结构_第32张图片
2- ARM Cortex-M体系结构_第33张图片
2- ARM Cortex-M体系结构_第34张图片

2.4 异常和中断

2- ARM Cortex-M体系结构_第35张图片
2- ARM Cortex-M体系结构_第36张图片
2- ARM Cortex-M体系结构_第37张图片
2- ARM Cortex-M体系结构_第38张图片
2- ARM Cortex-M体系结构_第39张图片
2- ARM Cortex-M体系结构_第40张图片
2- ARM Cortex-M体系结构_第41张图片
2- ARM Cortex-M体系结构_第42张图片
2- ARM Cortex-M体系结构_第43张图片
2- ARM Cortex-M体系结构_第44张图片
2- ARM Cortex-M体系结构_第45张图片
2- ARM Cortex-M体系结构_第46张图片
2- ARM Cortex-M体系结构_第47张图片
2- ARM Cortex-M体系结构_第48张图片

你可能感兴趣的:(玩转STM32基础篇,嵌入式,单片机)