单片机与ARM嵌入式区别

本文主要针对ARM公司不同架构的芯片区别

Cortex系列属于ARMv7架构,这是到2010年为止ARM公司最新的指令集架构。(2011年,ARMv8 架构在 TechCon 上推出)ARMv7架构定义了三大分工明确的系列:“A”系列面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列针对实时系统;“M”系列对微控制器

图中的ARM7,ARM9,ARM11是ARM公司未更名前的芯片命名规则,其中ARM7属于低端处理器,ARM9,ARM11为中高端处理器。

目前差用的STM32为Cortex-m3内核,属于微控制器类;

而Cortex-A系列,则属于高端处理器,属于微处理器类;

高端处理器和低端处理器最明显的区别就是能不能跑系统。

这里的系统并不是指Ucos这种实时系统,而是像Linux这种系统。

它们的区别在于,低端处理器没有CACHE和MMU:

Cache存储器:电脑中为高速缓冲存储器,是位于CPU主存储器DRAM(DynamicRandomAccessMemory)之间,规模较小,但速度很高的存储器,通常由SRAM(StaticRandomAccessMemory静态存储器)组成。它是位于CPU与内存间的一种容量较小但速度很高的存储器。CPU的速度远高于内存,当CPU直接从内存中存取数据时要等待一定时间周期,而Cache则可以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从Cache中直接调用,这样就避免了重复存取数据,减少了CPU的等待时间,因而提高了系统的效率。Cache又分为L1Cache(一级缓存)和L2Cache(二级缓存),L1Cache主要是集成在CPU内部,而L2Cache集成在主板上或是CPU上。

MMU:是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权,多用户多进程操作系统。

将线性地址映射为物理地址

现代的多用户多进程操作系统,需要MMU,才能达到每个用户进程都拥有自己独立的地址空间的目标。

猜你喜欢

转载自blog.csdn.net/stm32_newlearner/article/details/82947660