|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
常用的嵌入式操作系统的存储器有哪些?
2 v% g4 y( B1 V" [
+ `% k# Q7 ?* u* ?1 p/ B7 A4 }1 ]存储器大体分为两大类,一类是掉电后存储信息就会丢失,称为“易失性存储器”,另一类是掉电后存储信息依然保留,称为“非易失性存储器”,分支如下图所示:
7 R" B$ w( c$ t& v# f; s
7 `6 z! R4 K) h7 l7 J l. ]
二.各个存储器的特性,使用场景和范围?, {8 M! ?' O N% H; Y' P5 _# z
2.1 SRAM:
/ S. K& N" D2 U; D4 D* f- 特性:/ H2 }$ @# D* \' e$ M3 G
1.SRAM利用双稳态触发器来保存信息,只要不掉电,信息是不会丢失的。
, B+ q) i! b/ t) q8 J2 Z K5 V' I2.SRAM读取速度是目前存储器中最快的了。' C# v1 \* I6 r6 k$ S6 x; _7 A
3.SRAM集成度低,功耗较大,相同的容量体积较大,而且价格较高。
. ~5 b+ ~' ^2 n8 \2 e6 n: Z2 Q9 E0 E$ @( S- 使用场景和范围:% D F3 g' V+ u Y" F( [; r
一般用小容量SRAM作为更高速CPU和较低速DRAM之间的缓存。5 y' @2 c4 l' r& s, l7 S3 `
' }. l9 C8 x7 { }/ a) K& R$ D
2.2 SDRAM(Synchronous DRAM):6 W0 I" Y3 K& A6 d8 U% J/ y( l) R1 G
- 特性:0 g) \5 |* C v: \" [
1.DRAM是利用MOS(金属氧化物半导体)电容存储电荷来储存信息,因此必须通过不停的给电容充电来维持信息。
' r1 J% f0 h5 E/ j: a0 Q( X# D2.SDRAM基于双存储体结构,内含两个交错的存储阵列,当CPU从一个存储体或阵列访问数据时,另一个就已为读写数据做好了准备,通过这两个存储阵列的紧密切换,读取效率就能得到成倍的提高。
8 p, y% i; G. A$ g2 G8 b% }3.SDRAM将CPU与RAM通过一个相同的时钟锁在一起,使RAM和CPU能够共享一个时钟周期,以相同的速度同步工作。. ? a% j3 N5 `8 ?; Y
- 使用场景及范围:
6 P) `# n5 ]- I用于扩大程序代码存储空间、执行或计算,类似内存
- J6 v7 l( P7 \+ y4 B
7 _" w# x+ r( ]% U2.3 DDR SDRAM
. [$ {8 B t' A- 特性:
. L% H+ u6 K3 |7 m% f. ]8 n. C# ~DDR SDRAM和SDRAM是基本一样,不同之处在于它可以在一个时钟读写两次数据,使得数据传输速度加倍了。5 f/ T; K; L/ v
- 使用场景及范围:
$ Z( l0 m. f2 U2 R7 H$ @一般用于需要高速缓冲大量数据系统中,如图像处理与高速数据采集等场合的系统中。
, L( F' R) r' `4 y) H5 x I4 w; X ^9 C
2.4 EEPROM
, M- {0 h9 O" V1 ~% U& C s- 特性:
$ I1 [5 \5 M3 _' A. {1.EEPROM是可以随机访问和修改任何一个字节,可以往每个bit中写入0或者1。
* U& }, b3 Y& i2.EEPROM掉电后数据不丢失,可以保持100年,可以擦写100w次。4 {* k! S% C) Y# q+ A1 q
3.具有较高的可靠性,但是电路复杂、成本高,因此目前的EEPROM都是几千字节,少有超过512k字节的。
2 ?2 R a8 z2 s- 使用场景及范围:- T& j( J3 a) Z" [; z
EEPROM可以用来存储一些变量(配置参数及少量数据),可根据需要进行修改,并且这些变量掉电后重新上电也不会改变。. n1 [. E* U# @( i
! Z1 K9 [% B; h9 I6 ]0 [4 C6 n4 _2.5 NOR FLASH
+ m% K6 n% R% I! `0 h% Y- 特性:3 n5 b: g2 H. _8 f3 J$ z
1.芯片内执行(XIP,execute in place),程序可以直接在NOR FLASH片内执行,不需要复制到RAM就可以直接运行。9 k1 O2 ~0 \1 T) [
2.数据线和地址线分开,可以实现ram一样的随机寻址功能,可以读取任何一个字节。0 N% ~& k# V, w) |* \: C) e. v2 Z# @
3.NOR FLASH的读取和RAM很类型,只要能够提供数据地址,数据总线就能够正确的给出数据,但不可以直接进行写操作,写操作需要遵循特定的命令系列,最终由芯片内部的控制单元完成写操作。
9 @0 C$ R t- ]+ i4.从最小访问单元来看,NOR FLASH一般分为8位和16位(有些同时支持8位模式和16位模式)。6 u' P) W) `2 z" H& Z0 @
5.NOR FLASH的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响到它的性能。(NOR则要求在进行擦除前先要将目标块内所有的位都写为1,擦除NOR器件时是以64~128KB的块进行的,执行一个写入/擦除操作的时间为5s)5 W7 i; O# `8 E* T
- 使用场景及范围:
6 F6 k9 b; U# Z5 }5 [NOR FLASH一般只用来存储小容量的程序代码或数据存储,运行期间不允许修改。
5 b$ q) s. O J$ t' h* n3 u' u% g: Z: f( e4 E/ Y9 n
2.6 NAND FLASH
7 y+ S: u0 X. m) s7 V2 l- 特性:
6 Y+ ~8 [/ W8 n' l1.NAND FLASH按块擦除,数据线和地址线复用,不能利用地址线随机寻址,读取只能按页来读取。' ?4 X8 A+ C1 i% u3 D
2.由于NAND FLASH引脚复用,因此读取速度比NOR FLASH慢一点,但是擦除和写入速度比NOR FLASH快很多。7 C% p& M/ ]- _- O4 B
3.NAND FLASH内部电路更简单,因此数据密度大,体积小,成本也低,因此大容量的FLASH都是NAND型的。* a/ v# O" u* S( c
4.使用寿命上,NAND FLASH的擦除次数是NOR的数倍。而且NAND FLASH可以标记坏块,从而使软件跳过坏块,NOR FLASH一旦损坏便无法再使用。8 e6 J, H2 G2 L5 h, S) a# a& i: T
- 使用场景及范围4 S. _1 @2 f" R9 j) h8 l
NAND FLASH结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快,适合高数据存储密度的解决方案。" B$ t, h [: {& f5 C
. p" A [9 c- c: T; y9 r& e3、存储器怎么选型?
- a8 H$ A1 C/ [3 @# B! [- 根据系统中存储需求,及各个存储器使用场景及范围选用(引导存储及配置存储必须非易失性存储器,程序存储选用闪存,或数据存储等需求)
1 Q( N2 \/ ?* G" ~+ Z, P- 确定存储器容量大小(大容量pin to pin可替换)及成本控制(不同存储器生产工艺不同)。
6 Y0 s* y$ Y2 y# D6 p+ r- ^9 f7 Q- 确定存储器接口类型及开发周期(普遍性)。/ Q: D9 D5 \( K3 B
- 确定存储器的寿命问题(不同FLASH可擦写次数不同)( t3 F* n a: G6 I7 P, t1 O" E2 a7 g
" t7 d: l* h8 \( R$ x! P/ a9 ? |
|