销售热线 4008-220-880 搜索 语言

arm常用的嵌入式存储器有哪些(上)

2023年02月02日 | admin

威固小编首先带大家看一下嵌入式存储体系的划分,此处按照存储速度进行划分:

 arm常用的嵌入式存储器有哪些 上

1.寄存器

 

2.高速缓存Cache

 

3.RAM(例如SRAMDRAMDDRAM

 

4.主存储器(例如FlashPROMEPROMEEPROM

 

5.外部存储器(例如磁盘、光盘、CF卡、SD卡)

 

6.远程二级存储(例如分布式文件系统、Web服务器)

 

那么为什么会存在嵌入式存储体系,都用寄存器或者磁盘存数据不就好了?

 

其实计算机采用分级存储体系的主要目的是解决存储容量、成本和速度之间的矛盾问题。

 

  速度越快的存储器,通常价格也越高。所有数据都采用寄存器存储也是可以的,但是做出来的产品价格将会特别昂贵。用磁盘存所有的数据也行,但是嵌入式设备的运行速度将会特别慢。

 

所以两者在商业上并不可行。因此寄存器一般用特别小的容量,Cache容量比寄存器大,主存储器容量又比RAM大,如此递推,可以获得最佳的性价比。

 

1.寄存器

 

  通常是嵌入式开发中最高速的存储器,由边沿触发方式的的触发器、门电路组成,价格极为昂贵。主要作用是用来暂时存放数码或指令

 

一个触发器可以存储1位二进制代码,故存放n位二进制代码的寄存器,需用n个触发器来构成。

 

2.高速缓存Cache

 

可以把Cache理解为一个承上启下的存储器,它传递数据给CPU,又向主存获取数据。

 

那么为什么不直接从主存直接获取内容传给CPU?原因是存储速度和储存的局部性原理。

 

为了缓解CPU和主存中速度差异,引入Cache这种比CPU速度慢但是又比主存速度快的中间介质会有效解决速度差异带来的矛盾。再者存储是有局部性的,在CPU运行时,所访问的数据会趋向于一个较小的局部空间地址内。

 

所以高速缓存Cache用来存储当前最为活跃的程序和数据,直接与CPU交互。

 

Cache由半导体材料构成,其功能对于程序员来说是透明的存在,所以大部分程序员都没有留意到它。这里值得注意的是Cache的存储内容是当前最为活跃的程序和数据。

 

因此Cache有一个命中率的概念,即当CPU所访问的数据在Cache中命中时,直接从Cache中读取数据。若CPU访问的数据不在Cache中,则还是需从主存中读取。

客服

邮箱

导航

联系