色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

深入探討i.MX RT1010 OTA存儲結構

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 作者:恩智浦MCU加油站 ? 2021-10-29 16:14 ? 次閱讀

最近恩智浦在Github發布了一套基于MCU的OTA工程,該工程支持i.MX RT系列,且支持security的相關功能,得到了用戶的廣泛關注。

這套工程是基于恩智浦的EVK開發板,板載Flash的容量也就決定了整個OTA工程的存儲結構。但是不同容量的flash,OTA的存儲結構也不盡相同。本文將最近支持客戶時的一些經驗予以總結,當大家更換flash的時候,可以更快的完成OTA工程配置。本文介紹的方案為基于Remap功能實現OTA的方法。整個OTA的存儲結構可以用下圖進行表示,即 SBL(Secure Bootloader), OTA Flag Data,Slot1,Slot2和Customer Data區域。

SBL的主要功能是用于在芯片POR啟動后,根據OTA flag data的信息,決定存儲在Slot1或者Slot2的程序進行運行。除此之外,還支持程序的驗簽,回滾等功能。

OTA Flag Data區域主要是用于存儲OTA升級過程中的一些標志位信息,根據相關的標志位信息SBL進行image升級,回滾和跳轉到對應的slot運行程序。

Slot1和Slot2用于存儲應用程序。

Customer Data用于存儲客戶的一些信息(可選項,非必須)。

本文將就上述幾個區域的存儲空間分配,及中間的一些需要注意的點予以介紹。

基本的硬件環境是i.MX RT1010-EVK開發板,客戶的實際需求是使用一顆容量為512KB的Flash,且不需要使用Security相關的功能。因此在禁用Security功能后,使用IAR編譯出一個大小為25KB的SBL.bin文件。由于OTA中使用的Remap功能需要4KB對齊,以及Flash的最小擦除容量是4KB,因此SBL分配的容量是28KB,則此時SBL的地址分配空間為:FunctionAdd_StartAdd_End

SBL0x6000 00000x6000 6FFF

OTA Flag data盡管只有32Bytes的數據,但是在升級過程中這些數據需要讀寫擦,但Flash的擦除過程需要按照Sector的大小進行,因此也至少需要留存4KB的空間,則此時OTA Flag data的地址及空間分配為:

fd68864e-388a-11ec-82a8-dac502259ad0.png

接下來就是Slot1和Slot2,Slot1和Slot2要使用Remap的功能進行切換,Remap的地址需要4K對齊,則此時用于存儲應用層程序的地址空間分配為:

FunctionAdd_StartAdd_End

Slot10x6000 80000x6004 3FFF

Slot20x6004 40000x6007 FFFF

此時,細心的朋友們就會發現,完整的512K Flash空間已經被使用光了。沒錯,這次客戶不需要用這個CustomerData區域,希望把更多的空間用于應用程序。

在完成了OTA存儲結構按功能地址分配之后,我們進行一些細部探究。

首先看SBL,SBL區間主要包括用于Flash boot的相關信息,例如IVT, Flash Config Block等。這部分代碼基本上不需要改動,可以直接使用。

在地址空間分配上,可以將SBL區域視為一個可以從Flash XIP boot的hello word工程。

fdc48da4-388a-11ec-82a8-dac502259ad0.png

接著看一下OTAFlag Data區間的地址分配,OTA Flag Data共計32個字節,用于指示OTA過程中的三種狀態,升級,回滾以及正常工作(沒有升級和回滾發生)。

該32字節通常存儲在Slot1的首地址之前的32字節位置。

ff92553a-388a-11ec-82a8-dac502259ad0.png

最后來看Slot1和Slot2的地址空間分配。

應用程序的首地址,即中斷向量表的首地址并不是從Slot1的首地址開始的,原因有兩點

第一在image的起始地址需要增加用于OTA的ImageHeader信息,該Image Header的大小為32字節。

其次,對于應用程序中中斷向量表的起始地址,需要進行計算。其基本的計算原則是:中斷向量的數量 * 4的結果,向上對齊到2的次冪整數倍??碦T1010的中斷向量共計256個,但是真正可以使用的是96個。則此時的計算結果是:96 * 4 = 384。向上對齊到2次冪整數倍,則為512即0x200。

所以,應用程序的真正起始地址需要在Slot1的基礎上,向后調整0x200。

Slot2的空間分配也需要滿足這個條件。

fff0a036-388a-11ec-82a8-dac502259ad0.png

最終完整的地址空間分配如下圖所示:

006545f8-388b-11ec-82a8-dac502259ad0.png

當需要對OTAFlag Data以及Slot地址進行分配,可以在程序中搜索下圖中的關鍵詞進行更改,對下面的表格進行調整。

通常需要進行關注的關鍵地址為:BOOT_FLASH_ACT_APP和 BOOT_FLASH_CAND_APP。其余的地址信息,與這兩個地址信息存在依賴關系,程序內部可根據這兩個地址信息進行計算。

需要注意的是,本文中涉及到的OTA方法,是基于Remap功能實現的,因此僅僅適用于除RT1050,RT1020, RT1024, RT1015以外的RT系列。

最后,向在本次客戶支持中提供大量協助的Tim, Gavin, Xiaoli表示感謝。

差點忘了,原工程的下載地址是:

https://github.com/NXPmicro/sbl

https://github.com/NXPmicro/sfw

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    456

    文章

    50886

    瀏覽量

    424164
  • OTA
    OTA
    +關注

    關注

    7

    文章

    582

    瀏覽量

    35257
  • Boot
    +關注

    關注

    0

    文章

    150

    瀏覽量

    35846
  • SBL
    SBL
    +關注

    關注

    0

    文章

    4

    瀏覽量

    8320

原文標題:i.MX RT1010 OTA存儲結構小記

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    恩智浦i.MX 91生態合作伙伴最新開發板資源

    恩智浦i.MX 91應用處理器系列能夠快速實現基于Linux的經濟高效的邊緣應用程序。i.MX 91處理器在保持實惠價格的同時,融合了高性能處理、安全性和高能效,并且為i.MX 93應用處理器系列提供了全面的硬件和軟件可擴展性。
    的頭像 發表于 12-20 17:00 ?487次閱讀

    恩智浦i.MX RT700系列MCU的優勢

    作為邊緣智能時代的嵌入式工程師,你對一款理想的MCU有何期待?高性能、高集成、低功耗、更安全,以及出眾的AI推理能力……恩智浦半導體新近發布的i.MX RT700跨界MCU系列,就是你想要的答案!
    的頭像 發表于 12-09 09:16 ?466次閱讀

    恩智浦發布i.MX 94系列應用處理器

    恩智浦半導體發布i.MX 9系列應用處理器的新成員i.MX 94系列。該系列旨在用于工業控制、可編程邏輯控制器(PLC)、遠程信息處理、工業和汽車網關以及樓宇和能量控制。
    的頭像 發表于 11-26 17:48 ?729次閱讀

    NXP專為邊緣AI打造的i.MX RT700跨界MCU到底強在哪?

    i.MX RT700系列提供了高性能、高集成度、先進功能和高能效的優化組合,為支持智能AI的邊緣端設備賦能,例如可穿戴設備、消費電子醫療設備、智能家居設備和HMI設備。 在i.MX RT
    發表于 11-08 09:40 ?857次閱讀
    NXP專為邊緣AI打造的<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>700跨界MCU到底強在哪?

    如何在i.MX RT微控制器上初始化LWIP協議棧

    i.MX RT微控制器上初始化LWIP協議棧是一個復雜但有趣的過程,它涉及多個步驟和關鍵組件的配置.
    的頭像 發表于 10-12 11:48 ?380次閱讀
    如何在<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>微控制器上初始化LWIP協議棧

    恩智浦推出全新i.MX RT700跨界MCU系列

    高度集成的全新i.MX RT700跨界MCU旨在顯著節省功耗,配備eIQ Neutron神經處理單(NPU),可在邊緣端提供高達172倍的AI加速。
    的頭像 發表于 10-12 11:41 ?811次閱讀

    i.MX Linux開發實戰指南—基于野火i.MX系列開發板

    電子發燒友網站提供《i.MX Linux開發實戰指南—基于野火i.MX系列開發板.pdf》資料免費下載
    發表于 10-10 17:23 ?11次下載

    使用TPS65023的NXP i.MX 7電源設計

    電子發燒友網站提供《使用TPS65023的NXP i.MX 7電源設計.pdf》資料免費下載
    發表于 09-30 10:38 ?0次下載
    使用TPS65023的NXP <b class='flag-5'>i.MX</b> 7電源設計

    采用TPS65023的恩智浦i.MX 6電源設計

    電子發燒友網站提供《采用TPS65023的恩智浦i.MX 6電源設計.pdf》資料免費下載
    發表于 09-29 10:00 ?0次下載
    采用TPS65023的恩智浦<b class='flag-5'>i.MX</b> 6電源設計

    恩智浦半導體發布i.MX RT700系列MCU,賦能智能AI邊緣設備

    恩智浦半導體近期震撼發布了其最新力作——i.MX RT700跨界微控制器(MCU)系列,專為推動智能AI在邊緣端設備的應用而設計。這款創新產品精準定位可穿戴設備、消費級醫療設備、智能家居系統以及人機交互(HMI)平臺等前沿領域,展現了恩智浦在物聯網與人工智能融合領域的深厚
    的頭像 發表于 09-26 16:06 ?716次閱讀

    使用TPS6521815 PMIC為NXP i.MX 6Solo、6DualLite供電

    電子發燒友網站提供《使用TPS6521815 PMIC為NXP i.MX 6Solo、6DualLite供電.pdf》資料免費下載
    發表于 09-13 09:39 ?0次下載
    使用TPS6521815 PMIC為NXP <b class='flag-5'>i.MX</b> 6Solo、6DualLite供電

    恩智浦i.MX RT1170 uSDHC eMMC啟動時間

    大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是恩智浦i.MX RT1170 uSDHC eMMC啟動時間。
    的頭像 發表于 08-08 15:32 ?605次閱讀
    恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1170 uSDHC eMMC啟動時間

    基于 NXP i.MX RT1060 + IW416 的 Matter Thermostat 智慧溫控器應用方案之 Apple 生態系統

    NXP i.MX RT1060 是一款搭載 Arm Cortex-M7 的跨界微控制器,具有強大的處理能力和低功耗特性,而 IW416 則是一款高度集成的 Wi-Fi 4 和 Bluetooth 5.2 系統單芯片(SoC),提供了低成本的連接解決方案。
    的頭像 發表于 03-28 15:54 ?744次閱讀
    基于 NXP <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1060 + IW416 的 Matter Thermostat 智慧溫控器應用方案之 Apple 生態系統

    使用i.MX RT500實現SPI/DMA AN14170應用指南

    電子發燒友網站提供《使用i.MX RT500實現SPI/DMA AN14170應用指南.pdf》資料免費下載
    發表于 02-01 10:05 ?0次下載
    使用<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>500實現SPI/DMA AN14170應用指南

    i.MX RT SDK的Wi-Fi TX功率表和信道掃描管理應用指南

    電子發燒友網站提供《i.MX RT SDK的Wi-Fi TX功率表和信道掃描管理應用指南.pdf》資料免費下載
    發表于 01-14 09:27 ?0次下載
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b> SDK的Wi-Fi TX功率表和信道掃描管理應用指南
    主站蜘蛛池模板: 国产成人自产拍免费视频| 久久中文字幕无线观看| 蜜桃日本免费观看MV| 4399日本电影完整版在线观看免费| 邻家美姨在线观看全集免费| 999久久免费高清热精品| 在线看免费毛片| 老师机影院| 被男按摩师添的好爽在线直播| 无人在线观看免费高清视频播放| 狠狠色欧美亚洲狠狠色www| 中文字幕视频在线观看| 青草精品国产福利在线视频| 国产免费看片| 91avcom| 日本特黄网站| 韩日午夜在线资源一区二区| 在线观看免费精品国产| 日本男女动态图| 饥渴的护士自慰被发现| 99这里只有是精品2| 亚洲国产中文字幕在线视频| 蜜臀AV99无码精品国产专区| 国产精品人妻在线观看| 2020亚洲色噜噜狠狠网站| 天天综合亚洲综合网站| 恋老视频 国产国佬| 国产免费麻传媒精品国产AV| 99re8热视频这在线视频| 精品久久久久久电影网| JEALOUSVUE成熟老师APP| 亚洲国产成人久久一区www妖精| 男宿舍里的呻吟h| 好湿好紧水多AAAAA片秀人网| 亚洲欧美综合中文| 日本丝袜护士| 久久只有这里有精品4| 国产精品日本不卡一区二区| 91久久线看在观草草青青| 亚洲国产精品一区二区第一页| 青青青久久久|