uboot的烧录方式和flash

1、烧录方式

     1.1 将代码烧录到一个存储设备有两种方式:

           (1)用外部烧录器来烧录(比如一些Jink,内置了spi接口,本身可以读写spi,再配合配套的上位机软件将镜像或hex文件烧录到flash,和MCU没有关系)

           (2)通过主芯片提供的isp下载的机制来间接烧录到板载flash,pc需要一个软件来配合,不需要购买烧录器,比如海思的HI_TOOL,s5pv210的dnw烧录工具,通过pc软件工具我们给的指令,比如分配uboot、kernel等烧录区间大小、选择镜像等操作,mcu再将镜像,kernel等烧录到指定的分区。补充:pc端软件打开并连接了,mcu会首先会判断是否uart的烧录数据来了,如果一直没来,或者软件没打开,并且flash里面已经烧录了,通过内部数据交互,他就会从flash里面启动。

                    uboot的烧录方式和flash

         (3)

2、flash介绍

     (1)flash芯片 = 内部flash存储颗粒 + 封装的控制器

     (2)代码烧录存放的地方,板子启动时,根据BL0的设计,有的设计成cpu优先从flash中读取代码到DDR运行,uboot

     (3)像emmc、SD、MMC、Nandflash、SPIflash等区别在于控制器不用(使用不用的时序协议规则)

              小容量需要:SPIflash优势接口简单,一般的MCU都支持SPI接口协议,这样就可以外接,一个8M的只要几块钱,MCU内置flash成本高,很多MCU在需要外扩一个8M-64M级别的外部存储器时,选择spiflash,比如海思3518E用的16M的,uboot-268k+kernel-2.6M+rootf-4.8M,基本用不到10M;

              大容量需要:使用emmc、SD、MMC、Nandflash等,Nandflash属于将被淘汰的接口,且复杂,兼容性不好,一些MCU不支持了,大多用EMMC(比如现在手机内置的板载128G,不能插卡)、SD卡