• 路由器 NorFlash与NandFlash区别


    在淘宝上买修改openwrt的路由器,基本上都是改的16MB flash,那么为什么不改到1GB呢?

    现在U盘的价格也很便宜啊。

    于是我调查了一下,发现flash分为两种,NorFlash与NandFlash。

    一般路由器需要一个bootloader来启动,一开始上电启动的时候,从0x00开启运行代码,

    这个bootloader代码一般是可写的,不是固化在ROM里的,是烧写在flash里面的。

    那么需要从flash里面运行代码这一点,就决定了路由器需要采用NorFlash,而不是NandFlash。

    下面用一张表总结了NorFlash与NandFlash的特性区别:

    根据参考资料(http://www.cnblogs.com/wi100sh/p/4255072.html和http://zhidao.baidu.com/question/72486639.html):

    Nor Flash 的特点是芯片内执行和不能直接写操作,程序可以直接在其中运行,而不必将程序读取到RAM 中运行。

    理论上来说,有了Nor Flash,不用RAM就可以运行所有的代码。目前的spi flash一般指的是Nor flash。

    Nand Flash 的特点是采用非线性存储模式,程序无法在其中运行,它只能作为程序或数据的存储载体,

    存储在其中的程序只能先拷贝到RAM 中才能运行。cpu会自动从NAND flash中读取前4KB的数据放置在片内SRAM里,通过这个载体把nandflash中大代码复制到RAM(一般是SDRAM)中去执行)。程序员要完成的工作是把最核心的代码放在nandflash的前4K中

    从应用上来说,U盘都用的是Nand Flash,Nor Flash的大小目前基本上都只有几十兆。

    现在的Openwrt路由器基本上都是用的Nor Flash,但也有采用Nand flash 和 Nor Flash做组合的,用Nand flash做启动
    ,用Nor Flash存储资料文件。

    这里也有对它的总结:

     另外在查找资料的过程中发现有很便宜的编程器可以来烧写flash( CH341A编程器)

    参考资料:

    http://www.embedu.org/column/column05.htm

    http://baike.baidu.com/view/2741245.htm

    http://blog.micro-studios.com/?p=3888

    http://blogs.ejb.cc/archives/7715/openwrt-tutorial-b-jffs2-filesystem

    http://www.cnblogs.com/wi100sh/p/4255072.html

    http://bbs.dzsc.com/space/viewspacepost.aspx?postid=69978

    http://zhidao.baidu.com/question/72486639.html

    http://forum.eepw.com.cn/thread/264953/1

    http://bbs.xiaomi.cn/forum.php?mod=viewthread&action=printable&tid=8976496

  • 相关阅读:
    ubuntu18.04下eclipse修改maven源为阿里源
    Java中使用队列Queue
    Redis学习笔记——Redis的基本操作
    ubuntu安装redis
    Spring Boot使用监听器Listener
    Spring Boot中在程序中获得application.properties中的值
    Spring Boot使用过滤器Filter
    基于GTID的主从架构异常处理流程
    goroutine与调度器
    使用synergyc共享键鼠
  • 原文地址:https://www.cnblogs.com/tanhangbo/p/4458295.html
Copyright © 2020-2023  润新知