ROM & RAM

  • ROM(Read Only Memory)

    ROM在系统停止供电的时候仍然可以保持数据,如光盘CD-ROM,可以保存文件,且只能读取。

  • RAM(Random Access Memory)

    RAM通常都是在掉电之后就丢失数据,如计算机的内存条就是RAM,关机后内存数据被自动清空。

PROM & EPROM && EEROM

ROM又可分为几类

  • PROM

    可编程的ROM,但只能写入一次(有点像光盘,只能刻录一次),这种是早期的产品,现在已经不用了。

  • EPROM

    通过紫外光的照射擦出原先的程序,现在也不用了。

  • EEPROM

    电可擦除,如学习单片机时用到的AT24C02芯片,大小为2K,用于保存少量掉电不丢失的数据,单片机通过IIC来读写这个EEPROM的内容。

SRAM & DRAM

RAM又可分为两大类

  • SRAM(Static RAM)

    SRAM即静态RAM,读写速度非常快,但价格也较贵,用于CPU的一级缓冲,二级缓冲。

    单片机中也有SRAM,如STM32F103VET6具有64K的SRAM,用于程序运行时变量、堆栈的暂存等,另外,还可通过FSMC接口来扩展外部SRAM,如1M字节的IS62WV51216外部SRAM芯片,用于需要大量数据计算的场合(跑算法、GUI)

  • DRAM(Dynamic RAM)

    即动态RAM,保留数据的时间很短,速度也比SRAM慢(但比任何的ROM快),计算机内存就是DRAM。

    DRAM分为很多种,常见的主要有FPRAM/FastPage、EDORAM、SDRAMDDR RAM、RDRAM、SGRAM以及WRAM等。

    • SDRAM(Synchronous Dynamic RAM)

      同步动态随机存储器,主要不要误以为它是上面两种的组合!同步指存储器工作需要同步时钟,动态指刷新来保证数据不丢失,随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。

    • DDR RAM

      计算机内存条常说的DDR3、DDR4。

NAND Flash & NOR Flash

FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具有电可擦除可编程(EEPROM)的功能,还不会断电丢失数据,同时可以快速读取数据(NVRAM的优势),U盘使用这种存储器。

  • Flash

    单片机中的flash,就是用于保存程序,如STM32F103VET6具有512K的Flash。

    单片机还可以外接Flash,如W25Q128,16M大小,可用于保存图片等较大的数据,单片机通过SPI来读写其内容。

  • NOR Flash

    它的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。

    NOR的特点是应用简单、无需专门的接口电路、传输效率高,它是属于芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在(NOR型)flash闪存内运行,不必再把代码读到系统RAM中。在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。

  • NAND Flash

    NANDFlash的存储容量比NORFlash大,如K9F1208U08为64M。它没有采取内存的随机读取技术,而是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flah以外,还配了一块小的NOR Flash来运行启动代码。

    NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理和需要特殊的系统接口

  • 两者对比

    • NOR Flash的读取速度比NAND稍快一些。
    • NAND Flash的写入速度比NOR快很多。
    • NAND Flash的4ms擦除速度远比NOR的5s快。
    • NAND Flash擦除单元更小,相应的擦除电路更少。
    • NOR Flash带有SRAM接口,有足够的地址引脚来寻址,可以很容易的存取其内部的每一字节。
    • NAND Flash使用复杂的I/O口串行存取数据,8个引脚用来传送控制、地址和数据信息,时序较复杂。
    • NOR Flash一般容量较小,工艺较复杂,所以成本较高。
    • NAND Flash的生产工较为简单,因此其容量较大,价格更低。

eMMC

eMMC (Embedded Multi Media Card),即嵌入式多媒体卡,是MMC协会订立、主要针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC由Nand flash、Nand flash控制器以及标准接口封装组成。

a Card),即嵌入式多媒体卡,是MMC协会订立、主要针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC由Nand flash、Nand flash控制器以及标准接口封装组成。

嵌入式开发,各类存储方式知多少?相关推荐

  1. 嵌入式开发笔记-存储控制器

    我是一个刚开始学习,嵌入式的小白,最近对协议接口和存储的控制器,有了小小的理解,首先第一点,程序是在存储控制器里面跑起来的,在驱动程里,对相关的驱动寄存器 进行赋值,调用相关的功能. 存储控制器基本理 ...

  2. 【Android游戏开发十三】(保存游戏数据 [下文])详解SQLite存储方式

    上一篇跟各位童鞋介绍了SharedPreference 和 File流如何存储数据,并且推荐使用FileOutputStream/FileInputStream来存储咱们游戏数据,那么这一篇则是像大家 ...

  3. 嵌入式开发常用英语单词--你知多少?

    如果说你英语不咋的,那很大可能说明你的IT水平也就那样,看看这些我们经常能碰到的熟悉的朋友(单词)吧,或许,你会想到更多. 嵌入式开发常用英语单词主要分为以下五大部分: 1.C语言和数据结构 2.Li ...

  4. 瑞芯微RK3399嵌入式开发板Wifi 驱动 build in 方式

     RK3399的CPU采用big.LITTLE大小核架构,双Cortex-A72大核+四Cortex-A53小核结构,对整数.浮点.内存等作了大幅优化,在整体性能.功耗及核心面积三个方面都具革命性提升 ...

  5. Spring Cloud应用开发(七:使用Git存储方式实现分布式配置管理 )

    1.使用Git存储实现管理: 1.1.配置Git.在Git上创建microservice-study-config目录,并在目录中添加开发,预发布和测试的配置文件: 1.2.修改服务端配置文件.将mi ...

  6. iOS开发系列--C语言之存储方式和作用域

    概述 基本上每种语言都要讨论这个话题,C语言也不例外,因为只有你完全了解每个变量或函数存储方式.作用范围和销毁时间才可能正确的使用这门语言.今天将着重介绍C语言中变量作用范围.存储方式.生命周期.作用 ...

  7. micropython是啥 知乎_嵌入式开发必备调试工具:Micro-Lab

    在工作中,以什么样的方式向领导汇报工作最直接高效呢?当然是图形界面!图形界面更好表达一个程序设计的逻辑思维,一目了然,本次介绍的Micro-Lab出自风媒电子-赵工之手. 1.什么是Micro-Lab ...

  8. 嵌入式开发:安全嵌入式系统的5个要素—第5部分:安全存储

    在嵌入式开发中,安全存储通常是系统中的一个内存位置,用于保护对加密密钥.用户和服务凭证以及其他系统数据等敏感数据的访问.安全存储可以在芯片上,例如在闪存库或RAM位置内,或者像NOR闪存芯片那样的外部 ...

  9. 嵌入式开发模拟器:qemu使用,仿真多种方式启动内核kernel (超详细,tftp/nfs等方式)

    适用于: 想学习嵌入式开发,但又没有购买开发板的情况 开发测试阶段避免繁琐耗时下载到主板 便于调试驱动及内核 与外设关联不大时 环 境: vmare 15 pro ubuntu 18.04 qemu ...

最新文章

  1. 通过Visual Studio为Linux编写C++代码
  2. python-常见数据类型及其方法
  3. opencv 实现进度控制
  4. Javascript 或运算的判断小问题
  5. [bbk5128]第12集 - Chapter 06- Working with Composite Data Types -01-4998(Record)
  6. sql查询两个表结果相减_SQL 操作结果集 -并集、差集、交集、结果集排序
  7. 【干货】Html与CSS入门学习笔记12-14【完】
  8. 【java】多线程博客积累
  9. WaveShaperNode
  10. python global nonlocal
  11. 如何解决网站可能存在webshell网页木马,阿里云网站木马后门文件提醒
  12. 计算机毕业设计android的酒店客房预订客户端app(源码+系统+mysql数据库+Lw文档)
  13. 文件夹怎么加密 怎么给文件夹加密
  14. 使用RecyclverView和SwipeRefreshLayout实现下拉刷新和上拉加载效果
  15. Unity TimeLine丨A1.创建TimeLine、Animation Track,Extrapolation属性讲解
  16. Kotlin 特色之 Sealed Class 和 Interface
  17. 求两个数之间的素数和
  18. 学习笔记 山外K60库图像解压函数原理(底层代码详解)
  19. 【状语从句练习题】because / because of / although / in spite of
  20. 椭圆曲线密码学ECC

热门文章

  1. java 利用系统WinRAR解压缩(zip/rar压缩文件)
  2. 腾讯测试中台实践与交流活动圆满结束
  3. Which前加逗号与不加逗号有什么区别
  4. Winfrom 播放MP3音乐文件
  5. 怎样把iPhoneX手机备忘录同步到华为p20手机上?
  6. opencv图像融合(给人脸添加一个眼镜)
  7. 093 《习惯的力量》简记
  8. linux修改文件句柄数生效_Linux 修改最大文件句柄数
  9. linux设置文件句柄数
  10. python平均入门时间_理论+Python代码详解:入门时间序列分类