• ARM 的内存与外存


    前言

    计算机系统组成结构

    在这里插入图片描述


    一、内存与外存

    内存

    内存,就是内部存储器,用来运行程序的,称为 RAM(随机访问存储器)。
    举例:DRAM SRAM DDR


    外存

    外存,就是外部存储器,用来存储文件,程序等,称为 ROM(只读存储器)。
    举例:硬盘、Flash(NandFlash iNandFlash··· U盘、SSD) 、光盘。


    CPU连接内存和外存的连接方式不同

    CPU 连接内存和外存的连接方式不同。

    • 内存需要直接地址访问,所以是通过 “地址总线 & 数据总线” 的总线式访问方式连接的(好处是直接访问,随机访问;坏处是占用 CPU 的地址空间,大小受限);

    在这里插入图片描述

    • 外存是通过 CPU 的外存接口来连接的(好处是不占用 CPU 的地址空间,坏处是访问速度没有总线式快,访问时序较复杂);

    在这里插入图片描述


    • 图解内存与外存
      在这里插入图片描述

    二、内存分类

    • SRAM,静态内存,特点就是容量小,价格高优点是不需要软件初始化直接上电就能用
    • DRAM,动态内存,特点就是容量大、价格低缺点就是上电后不能直接使用,需要软件初始化后才可以使用

    单片机中内存需求量小,而且希望开发尽量简单,适合全部用SRAM

    嵌入式系统:内存需求量大,而且没有NorFlash等可启动介质

    PC机:内存需求量大,而且软件复杂,不在乎DRAM的初始化开销,适合全部用DRAM


    三、SoC 常用外存

    在这里插入图片描述

    电访问方式的 Flash 的访问速度比机械硬盘要快。

    嵌入式系统的外存全是采用 Flash ,而不是机械硬盘。因为机械硬盘的可靠性相比 Flash 不高,而且嵌入式系统的 ROM 一般要求的空间不会太大。

    NAND Flash 都是需要通过时序去访问的,所以一般不能用来做启动介质;而 NOR Flash 可以通过总线式访问,就可以用来做启动介质。

    现在的 CPU 很多都支持了通过 NAND Flash 来启动(这在以前是不支持的)。原因是,第一, NOR Flash 很贵;第二,三星公司生产的 Flash 基本都是 NAND Flash,三星作出了很大努力支持 从 NAND Flash 启动 CPU, S5PV210 里面的 IROM,就是 NAND Flash;之所以研究从 NAND Flash 启动 CPU 的机制,就是为了挤占 NOR Flash 的市场(三星不生产 NOR Flash)。


    Flash

    • NorFlash:最大特点是总线式访问,可以像内存一样接在 CPU 的地址空间中,一般接到 CPU 地址空间的 SROM 空间

      容量小,价格高,优点是可以和 CPU 直接总线式相连,CPU 上电后可以直接读取,所以一般用作启动介质,如 BIOS 就是存储在 NOR Flash。如下图所示的位置:

    在这里插入图片描述

    在这里插入图片描述


    • NandFlash:分为 SLC 和 MLC,SLC 容量小,价格高,但是很稳定,无需做 ECC 校验;MLC 容量大,价格低,但是不稳定。

      特点是容量大,价格低,缺点是不能总线式访问,也就是说不能上电 CPU 直接读取,需要 CPU 先运行一些初始化软件,然后通过时序接口读写。

    • eMMC/iNand/moviNand:eMMC (embeded MMC),eMMC 本身是一种标准,很多公司都可以生产他们自己的 eMMC卡;eMMC 本身是一块芯片,这款芯片用来管理 eMMC 卡内部的存储空间和坏块处理。

      iNand 是 SanDisk 公司出产的eMMC, moviNand是三星公司出产的eMMC。

    • oneNAND:oneNAND 是三星公司出的一种 NAND,用的场合不多。

    • SD卡/TF卡/MMC卡:这三种都是SD卡,TF卡又名 micro SD卡,这些卡内部也是内置了芯片,用来管理坏块处理等工作。

    • eSSD: embeded SSD,SSD 是固态硬盘,也是一种 NAND Flash。


    硬盘

    • SATA硬盘(机械式访问、磁存储原理、SATA是接口)

    四、S5PV210支持的外部存储器

    • 见datasheet Section2.6 booting sequence

    在这里插入图片描述

    • 见datasheet Section5全部,memory

    在这里插入图片描述

    • 见datasheet Section8.7 SD/MMC部分

    在这里插入图片描述


    注:源自B站朱有鹏老师.

  • 相关阅读:
    JavaWeb(一)
    微软出品,166页深度解读,多模态GPT-4V
    软件测试八年测试开发经验面试28K公司后,吐血整理出高频面试题和答案!
    Python实现的桌面翻译程序代码
    UEFI基础——测试用例Hello Word
    导数求函数最大值和最小值习题
    Linux 内核构建
    java io流中为什么使用缓冲流就能加快文件读写速度
    10.2手动推导linux中file, cdev, inode之间的关系
    shell脚本之免交互
  • 原文地址:https://blog.csdn.net/weixin_42109053/article/details/127662235