Cortex M0:
32位ARMv6M架构,核心为冯诺依曼结构,3级流水线RISC,指令和数据共享同一总线,处理性能1.62 CoreMark/MHz or 0.84 DMIPS/MHz。
现有尺寸最小、能耗最低(不到12K门的面积内最低能耗仅85µW/MHz)的ARM微控制器,相当于Cortex M3的1/3芯片面积,超低的门数便于和其他单元组合成强大的SOC,如无线通信和传感器SOC。
只有56个控制指令便于彻底掌握,thumb-2指令集对Flash空间需求较小,代码大小比8位MCU小30%。
基于AMBA结构(高级微控制器总线架构)的AHB-lite总线,AHB-lite总线只支持1MASTER-多SLAVE,要用DMA必须要用到BusMatrix来进行仲裁。
包括基于CoreSight技术的SWD或JTAG调试接口,ARM的CoreSight是目前业界领先的多核片上Trace解决方案。
Cortex-M0微控制器的硬件也包含多个可配置选项:中断数量、可选的唤醒中断控制器WIC、睡眠模式和节能措施、存储系统大小端模式、系统滴答时钟等。相比Cortex M3更偏向于控制,没有硬件除法、单周期乘法和位字段操作强化运算的单元。
分支预测,包含编译时进行的静态分支预测和硬件在执行时进行的动态分支预测,动态分支预测包括分支预测缓冲区(Branch Prediction Buff)或分支历史表(branch history table),Cortex M0无动态分支预测。
M0内核没有主优先级的概念,即不能设置优先级组,即 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);所以相同的优先级以中断号来判定,没有同级之间的中断屏蔽效果。
无内存保护单元MPU