zoukankan      html  css  js  c++  java
  • NandFlash与NorFlash

    目前已经很多ARM9的处理器都至少支持nand flash启动 和nor flash启动。那此两种启动方式到底有什么区别呢?下面以S3C2440为例说明。

    NandFlash 与 NorFlash 区别

    如下表所示

     

    NOR

    NADN

    容量

    1~32MB

    16~512MB

    XIP(芯片内执行)

    Yes

    No

    性能

    擦除非常慢,写慢,但是读非常快

    擦除、写、读都较快

    可靠性

    高,位反转比例小于nandflash的10%

    比较低,位反转比较常见

    接口

    与RAM一样

    I/O接口

    访问方法

    随机访问

    顺序访问

    主要用途

    保存代码和关键数据

    用于保存数据

    价格

    文件系统支持

    Jffs2

    Yaffs

    记住最重要一点,NOR Flash的接口与RAM一样,所以可以随机访问任意地址,效率高,所以读的效率非常高。而NAND FLASH一般以512字节为单位进行读写。前者更适合保存程序,而后者保存数据。

    启动方式对比

    Nand启动

    分两种情况,应用程序小于4K和应用程序大于4K。

    如果应用程序小于4K:

    (1)       一上电,nand前4K自动拷贝到2440内部的SRAM中。(2440的片内存储为4K)

    (2)       CPU从0地址执行(此时,0地址在SRAM中)

    如果应用程序大于4K,那么应该怎么办呢。还是一样:

    (1) 上电后,从nand前4K拷贝到片内的SRAM

    (2)关看门狗、初始化存储器管理器、SDRAM等

    (3) 把代码拷贝到SDRAM中,并继续执行。

    不同的是,需要订制这4K的代码,完成从nandflash到sdram代码的复制。

    Nor启动

    最根本的区别在于从nor启动,由于nor也是并行传输,可以像内存(SRAM)一样读数据,但不能像内在一样写数据,所以可以将0地址定位在norflash中

    (1)       一上电,将0地址定位在nor flash中

    (2)      同样,CPU从0地址取址执行。

  • 相关阅读:
    远程桌面工具mRemoteNG与Tsmmc
    敏感性Sensitivity和特异性Specificity的说明
    React教程:4 个 useState Hook 示例
    React Hooks究竟是什么呢?
    一步一步搭建前端监控系统:如何监控资源加载错误?
    Promise的三兄弟:all(), race()以及allSettled()
    JavaScript中this究竟指向什么?
    编译器与Debug的传奇:Grace Murray Hopper小传
    21个React开发神器
    8种常见数据结构及其Javascript实现
  • 原文地址:https://www.cnblogs.com/dudu1990/p/3393258.html
Copyright © 2011-2022 走看看