STM32学习笔记——十八、常用存储器介绍

1 存储器种类

  1. 存储器是计算机结构的重要组成部分
  2. 存储器:用来存储程序代码和数据的部件
  • 有了存储器,计算机才具有记忆功能
  1. 基本的存储器种类
    在这里插入图片描述
  2. 存储器按其存储介质特性分为:
  • 易失性存储器
    • 存储器断电后,存储数据内容丢失
    • 优势:存取速度快
    • 代表:内存
  • 非易失性存储器
    • 存储器断电后,存储数据内容丢失
    • 优势:可长期保存
    • 代表:硬盘

2 RAM 存储器

  1. RAM随机存储器(Random Access Memory):
  • 随机存取含义:存储器中消息被读取或写入时,所需要的时间与这段信息所在的位置无关
  • RAM可随时读取磁鼓内部任意地址的数据,时间都是相同的,名字由此得来
  • RAM 专门用于指代作为计算机内存的易失性半导体存储器
  1. RAM 的存储机制将RAM分为:
  • 动态随机存储器DRAM(Dynamic RAM)
  • 静态随机存储器SRAM(Static RAM)

2.1 DRAM 动态随机存储器

动态随机存储器 DRAM

  • 存储单元:以电容的电荷来表示数据
    • 有电荷代表1
    • 无电荷代表0
    • 定期刷新操作(即动态一词形容的特性):时间一长,代表1的电容会放电,代表0的电容会吸收电荷
      • 刷新操作:电量大于1/2,认为为1,充满电;电量小于1/2,认为为0.电容放电
        在这里插入图片描述在这里插入图片描述

2.1.1 SDRAM 同步动态随机存储器

DRAM根据通讯方式可分为:

  • 同步动态随机存储器
  • 异步动态堆积存储器
  • 根据通讯时是否需要使用时钟信号来区分

同步通讯时序图

  • 一种利用时钟进行同步的通讯时序
  • 在时钟的上升沿表示有效数据
  • 在这里插入图片描述
    同步DRAM(Synchronous DRAM):
  • 优点:使用时钟同步的通讯速度更快,同步DRAM使用更广泛

2.1.2 DDR SDRAM

DDR SDRAM(Double Data Rate SDRAM):

  • 为了进一步提高SDRAM的通讯速度,设计了DDR SDRAM
  • 存储特性:与SDRAM没有区别
    • SDRAM只在上升沿表示有效数据,在一个时钟周期内,只能表示一个有效数据
    • DDR SDRAM在时钟上升沿及下降沿各表示一个数据,在一个时钟周期内,可以表示两位数据
    • 同时中频率下,提高了一倍速度
  • DDRII和DDRIII通讯方式无区别,通讯同步时钟的频率提高了

2.2 SRAM 静态随机存储器

静态随机存储器 SRAM

  • 存储单元:以锁存器来存储数据
    • 电路结构不需要定时刷新充电,能保持状态,断电后,数据还是会丢失,称其为静态(Static) RAM
      在这里插入图片描述
  • 通讯方式
    • 同步(SSRAM)
    • 异步SRAM:异步SRAM用的比较广泛

2.3 DRAM 与 SRAM 的应用场合

对比DRAM 与SRAM 的结构

  • DRAM 的结构简单得多,所以生产相同容量的存储器,DRAM的成本要更低,且集成度更高。
  • DRAM 中的电容结构则决定了它的存取速度不如SRAM
  • 特性对比见表DRAM 与SRAM 对比
    在这里插入图片描述
  • 在实际应用场合中:
    • SRAM 一般只用于CPU 内部的高速缓存(Cache)
    • 外部扩展的内存一般使用DRAM
  • 在STM32 系统的控制器中,只有STM32F429 型号或更高级的芯片才支持扩展SDRAM,其它型号如STM32F1、STM32F2 及STM32F407 等型号只能扩展SRAM

3 非易失性存储器

非易失性存储器

  • 种类非常多
  • 半导体类:
    • ROM
    • FLASH
  • 光盘
  • 软盘
  • 机械硬盘
    在这里插入图片描述

3.1 ROM 存储器

ROM 存储器(Read Only Memory):

  • 只能读存储器
  • 后来设计出了可方便写入数据ROM
  • Read Only Memory名称延续下来
  • 指代非易失性半导体存储器
    • 包括:FLASH存储器

3.1.1 MASK ROM

MASK(掩膜)ROM

  • 正宗的Read Only Memory
  • 存储在内部的数据,是出场时使用特殊工艺固化的,生产后不可修改
  • 主要优势:大批量生产时成本低
  • 应用场合:生产量大,数据不需要修改的场合

3.1.2 OTPROM

OTPROM(One Time Programable ROM) 一次可编程存储器:

  • 用户可使用专用的编程器,将自己的资料写入,只能写入一次
  • 被写入后,内容也不可再修改
  • 应用场合
    • NXP公司生产的控制器芯片中尝试用OTPROM来存储密钥
    • STM32F429芯片中具有一部分OTPROM空间

3.1.3 EPROM

**EPROM(Erasable Programmable ROM)**可重复擦写的存储器:

  • 解决了PROM芯片只能写入一次的问题
  • 使用紫外光线照射芯片内部擦除数据,擦出和写入都要专用的设备
  • 现在这种存储器基本淘汰,被EEPROM取代

3.2 FLASH 存储器

FLASH存储器闪存(可重复擦写的存储器):

  • 有书籍称为:FLASH ROM
  • 容量比EEPROM大得多
  • 在擦除时,一般以多个字节为单位
    • 例如:有的FLASH存储器以4096个字节为山区,最小的擦除单位为一个扇区

根据存储单元电路的不同存储器分为:

  • NOR FLASH
  • NAND FLASH
  • 特性对比
    在这里插入图片描述
  1. NOR 与NAND 的共性
  • 在数据写入前都需要有擦除操作,而擦除操作一般是以“扇区/块”为单位的
  1. NOR 与NAND 特性的差别
  • 主要是由于其内部“地址/数据线”是否分开导致的
    • 由于NOR 的地址线和数据线分开,它可以按“字节”读写数据,符合CPU 的指令译码执行要求
      • 假如NOR 上存储了代码指令,CPU 给NOR 一个地址,NOR 就能向CPU 返回一个数据让CPU 执行,中间不需要额外的处理操作。
    • 而由于NAND 的数据和地址线共用,只能按“块”来读写数据
      • 假如NAND 上存储了代码指令,CPU 给NAND 地址后,它无法直接返回该地址的数据,所以不符合指令译码要求。
    • 表NOR_FLASH与NAND_FLASH 特性对比中的最后一项“是否支持XIP”描述的就是这种立即执行的特性(eXecuteIn Place)。
  1. 代码存储在NAND 上,可以把它先加载到RAM 存储器上,再由CPU 执行。
  • 在功能上可以认为NOR 是一种断电后数据不丢失的RAM,但它的擦除单位与RAM 有区别,且读写速度比RAM 要慢得多。
  1. FLASH 的擦除次数都是有限的(现在普遍是10 万次左右),当它的使用接近寿命的时候,可能会出现写操作失败。
  2. 由于NAND 通常是整块擦写
  • 块内有一位失效整个块就会失效,这被称为坏块
  • 由于擦写过程复杂,从整体来说NOR 块块更少,寿命更长
  • 由于可能存在坏块,所以FLASH 存储器需要“探测/错误更正(EDC/ECC)”算法来确保数据的正确性
  1. 由于两种FLASH 存储器特性的差异
  • NOR FLASH 一般应用在代码存储的场合,如嵌入式控制器内部的程序存储空间
  • NAND FLASH 一般应用在大数据量存储的场合,包括SD 卡、U 盘以及固态硬盘等,都是NAND FLASH 类型的。
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值