RAM&ROM相关知识
2016-04-16 16:43
127 查看
RAM & ROM 相关知识
Rains 2016.4.9
ROM (read only memory) 只读存储器:
ROM这里指的是早期的只读存储器,只可读不可写,写是在出厂时写入的,其工作原理的一类是使用熔丝,一旦熔断不可恢复 PROM (Programmable ROM)可编程ROM 早期ROM的改进型,可以有唯一一次编程机会,使用专门的编程器,原理与熔丝类似 EPROM (Erasable Programmable ROM)擦除可编程ROM 进一步改进型,使用专门的编程器,擦除使用紫外线擦除 EEROM (Electrilly Erasable Programmable ROM)电可擦除ROM 编程电压和平时使用的电压不同,最小修改单位为字节 FLASH ROM 真正的单电压操作,写入时最小单位是字节,存储时的最小单位是块,具体大小看厂家 现在的ROM名字不再完全是早期的只读不能写的意思了,更多的是代表存储器的意思,故大多数都叫flash了
RAM (Random-Access Memory)(随机存取存储器)
读是随机的,可以地址线寻址,直接寻找对应字节读写。与之相对应的顺序存储器,只能按照顺序读写,如果你想要读第344个字节,那么必须先把前面的读出来RAM也就是常说的电脑内存,而ROM对应的就是flash
IROM (internal ROM ) 芯片内部的ROM 通常是SROM IRAM (internal RAM ) 芯片内部的RAM 通常是SRAM ,可以直接使用
RAM 包含:
DRAM (Dynamic Random Access Memory) 动态随机存储器 常使用电容来存储,需要定期刷新,掉电后数据丢失 SDRAM:Synchronous Dynamic Random Access Memory,同步动态随机存储器 DRAM的一种 SRAM (statc RAM) 静态随机存储器,掉电后数据保存
区别:
SRAM 静态内存 容量小价格高 ,单片机里常用,不需要软件初始化 DRAM 动态内存 特点是容量大,价格低,但是上电后不能直接使用,需要软件刷新 SROM (static rom) 静态存储器 新
内存 内部存储器 用来运行程序 RAM :DRAM SRAM 外存 外部存储器 用来存储东西 ROM :Flash (NAND,INAND U盘)
内存常用配置 :
内存通过总线连接,直接访问,速度快 随机访问;但是占用CPU空间,大小受限 静态内存 容量小价格高 ,单片机里常用,不需要软件初始化
DRAM 动态内存 特点是容量大,价格低,但是上电后不能直接使用,需要软件刷新
单片机中:内存需求量小,希望开发尽量简单,适合全部使用SRAM 嵌入式中:内存需求量大,没有NorFlash等启动介质 Pc机 :内存需求量大,软件复杂,适合是用DRAM
单片机: 很小的NorFlash + 很小的SRAM PC机 : BIOS 初始化,硬盘读写 嵌入式: NorFlash 很贵 现在很多都是 Nand + DRAM + SRAM的使用方法
外存 :
外存通过cpu的外存借口连接,不占用CPU空间,但是速度不如总线式快NorFlash 总线式访问 接SROM口,优点直接访问,一早期的启动方式如2440 ,bios NandFlash 价格便宜,但是不如NORFlash 分为 SLC安全 MLC 容易出问题 eMMC/inand /movinand EMMC一种芯片,与iand基本一样 ,是SD卡的芯片化 onenand 三星公司生产的nand sd/tf卡/mmc卡 三种基本相似 eSSD MLC的nandflash
Norflash & Nandflash
NorFlash : 容量小,价格高,但是可以和总线直接相连,CPU上电可直接读取,一般作为启动介质 NandFlash:容量大,价格低,不能总线式连接,需要先运行初始化程序,然后通过时序写接口
● NOR的读速度比NAND稍快一些。 ● NAND的写入速度比NOR快很多。 ● NAND的擦除速度远比NOR快。 ● NAND的擦除单元更小,相应的擦除电路更加简单。 ● NAND的实际应用方式要比NOR复杂的多。 ● NOR可以直接使用,并在上面直接运行代码,而NAND需要I/O接口,因此使用时需要驱动
参考:朱老师物联网大讲堂
相关文章推荐
- Html5 Cavans之高级内容上篇
- iOS开发-由浅至深学习block
- php实现SESSION跨域
- mvc 中的 [ChildActionOnly] 和 [NonAction]
- ARM NEON编程系列1-导论
- Swift-网络上传请求之Multipart
- 稀疏矩阵的压缩存储和转置
- 结构体指定成员赋值
- Ubuntu 16.04 配置中文输入法
- 【Java集合源码剖析】HashMap源码剖析
- warning malformed '#pragma pack(push[, id], n)' - ignored
- UVALive 6195 —— The Dueling Philosophers Problem
- 堆数据
- 那些年无法一下子看穿的智力题
- C++拷贝构造函数详解
- 20160416
- 揭秘微信红包架构、抢红包算法和高并发和降级方案
- 【杭电oj】1872 - 稳定排序(结构体排序)
- while (getchar() != '\n')
- Map很多Key-Value对应是可以此来处理!