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