? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?MCU和MPU 1. 是什么?
? ? ? ?CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processing/Processor,数字信号处理),另外两个是MCU(Micro Control Unit,微控制器单元)和MPU(Micro Processor Unit,微处理器单元)。
*********************单片机属于微控制器,也就是MCU********************************
*******************像ARM9,ARM11,A8,A9就是MPU*******************************
2. 异同
嵌入式MCU单片机集成了嵌入式系统工作所需的逻辑计算内核cpu,存储数据/代码的RAM,EEPROM和Flash,内部互联总线—Crossbar、AMBA(APB、AHB以及AXI bus),定时器资源、中断控制器(INTC,通用GPIO,ADC、DAC和ACMP,段码LCD控制器、TFT LCD控制器,通信接口/控制器—IIC、SPI、USART、CAN等;
当然,MPU中也会集成很多嵌入式系统工作所需的大部分片上外设,但因为其计算单元CPU内核运行速度非常快,所以其一般不会再片内集成系统工作所需的RAM和Flash存储器,而是集成SDR/DDR2/3/4等外部SRAM扩展接口和NAND/NOR Flash扩展接口,用户设计基于MPU的硬件系统时还需选择合适的SRAM和外部Flash才可以保证系统正常工作。
相比较于MCU来说MPU多了两个部件,?CACHE与MMU。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?CACHE和MMU 1. 是什么
CACHE:高速缓存,是硬件。
MMU:memory management unit,称为内存管理单元,是硬件。
物理地址:(英语:physical address),也叫实地址(real address)、二进制地址(binary address),它是在地址总线上,以电子形式存在的,使得数据总线可以访问主存的某个特定存储单元的内存地址。
虚拟地址:虚拟地址是相对于物理地址来说的。虚拟地址的提出,主要是为了解决在操作系统中,多线程内存地址重复,大进程在小内存运行等问题?,?在32位系统中,虚拟地址空间中有4G,在操作系统中程序中使用的都是虚拟地址
?
2. 特点,功能 2.1 Cache
Cache存储器:电脑中为高速缓冲存储器,是位于CPU和主存储器DRAM(Dynamic Random Access Memory)之间,规模较小,但速度很高的存储器,通常由SRAM(Static Random Access Memory静态存储器)组成。
就是因为处理器速度相对于内存速度,差距太大,所以就引入了CACHE。
而cache经常与写缓冲器(write buffer)一起使用,使用writer buffer的目的是,将处理器和cache从较慢的对主存的写操作中脱离出来。
?当CPU 要访问 cache 时, CPU 送来主存地址,放到主存地址寄存器中。然后通过地址变换部件把主存地址中的块号 B?变成 cache 的块号b,并放到 cache 地址寄存器当中。同时将主存地址中的块内地址 W?直接作为 cache 的块内地址 w装入到 cache 地址寄存器中。如果地址变换成功(通常称为 cache 命中),就用得到的 cache 地址去访问 cache,从 cache 中取出数据送到 CPU 中。如果地址变换不成功,则产生 cache 失效信息,并且接着使用主存地址直接去访问主存储器?。
工作原理:
??????????????1.程序要读取内存中地址A数据,然后程序首先以地址A查找Cache,一开始Cache无数据,导致“cache??miss”。
??????????????2.程序以地址A查找内存,读取数据后,把数据填入cache,称为”cache??fill“。
??????????????3.程序再次读取内存中A地址数据,这次直接以地址A查找cache,读取数据后直接返回给CPU,不用再去操作内存。
??????????????4.重复步骤1,周而复始,直到把cache填满(cache容量一般很小)。此时CPU再访问,就要发生cache替换,即把一些数据替换出去,填充新数据。
?
2.2 MMC
单片机里没有‘虚拟地址’这个概念,而是‘物理地址’,而在ARM领域,Linux编程的时候,就会涉及到‘虚拟地址’,经过MMU以后才是物理地址。
简单说MMC的作用有两点,地址翻译和内存保护。
具体参考:大神的博文
文档介绍:MMC原理
?
?
?
?
?
?
?
?
?
?
?
?
09482817