痞子衡嵌入式:恩智浦i.MX RTxxx系列MCU啓動那些事(1)- Boot簡介


  你們好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給你們介紹的是恩智浦i.MX RTxxx系列MCU的BootROM功能簡介html

  截止目前爲止i.MX RTxxx系列已公佈的芯片僅有一款i.MXRT600(還有幾款正在研發測試之中),因此本文的研究對象主要是i.MXRT600,i.MXRT600是i.MXRTxxx系列的開山之做,功能模塊很是全面,其BootROM特性基本能夠涵蓋i.MXRTxxx系列特性。測試

1、Boot基本原理

  關於Boot基本原理,痞子衡在 《飛思卡爾i.MX RTyyyy系列MCU啓動那些事(1)- Boot簡介》 文章裏介紹得很詳細,Boot原理是個通用的概念,此處再也不贅述。htm

2、i.MXRTxxx Boot

  在第一部分裏講了Boot基本原理以及各類Boot方式,那麼i.MXRTxxx Boot到底屬於哪種?在回答這個問題以前咱們先看一下i.MXRT600的system memory map:

  從memory map裏能夠看到,i.MXRTxxx支持存儲類型一共有三種:一是256KB的ROM(即BootROM)、二是總容量4.5MB的RAM(有兩個映射起始地址0x00000000/0x20000000)、三是分配給外部存儲器接口控制器(QSPI)的128MB區域。看到這裏你應該明白了,i.MXRTxxx Boot方式主要是藉助BootROM從外部存儲器加載Application到內部SRAM/原地XIP執行
  那麼i.MXRTxxx到底支持從哪些外部存儲器加載啓動呢?翻看i.MXRTxxx的參考手冊裏的Non-Secure Boot ROM章節,能夠看到i.MXRT啓動支持如下3種外部存儲器:對象

  • Serial(Multi-IO) NOR Flash via FlexSPI
  • SD/MMC via uSDHC
  • Serial(1-bit SPI) NOR via Flexcomm SPI

  其中Serial NOR Device能夠XIP,其餘2種Device沒法XIP,須要拷貝到內部RAM裏運行。關於具體如何從這3種Device啓動,痞子衡下篇文章接着聊。blog

  至此,恩智浦i.MX RTxxx系列MCU的BootROM功能痞子衡便介紹完畢了,掌聲在哪裏~~~接口

相關文章
相關標籤/搜索