一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

Serial NAND i.MX RT1xxx啟動

恩智浦MCU加油站 ? 來源:未知 ? 2023-08-17 08:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著技術(shù)的不斷發(fā)展,在文件系統(tǒng)應(yīng)用或者多媒體數(shù)據(jù)存儲方面而言 Raw NAND 已經(jīng)不是絕對優(yōu)勢了。最近越來越多的客戶需要在Serial NAND 操作文件系統(tǒng),并實現(xiàn)應(yīng)用代碼啟動。小編收到很多關(guān)于i.MXRT1xxxSerial NAND 啟動的咨詢問題,這個啟動設(shè)備突然火熱起來了~借此機會,今天跟大家介紹一下 Serial NAND 上制作、下載、啟動程序的方法。
  • Note:文中貼圖、代碼主要以 i.MXRT1050 為例,其余 i.MXRT1xxx 系列原理類似

支持的Serial NAND

SerialNAND 對應(yīng)的芯片型號很多,如果你在選型時不確定選擇哪一款i.MXRT Serial NAND 時,建議可選下面四款芯片,小編均已實測過:
  • Macronix MX35LF2G24AD (120MHz,x4 bits, 2KB Page/128KB Block/2Gb Device,8-bit/544byte ECC, 3.3V)

  • Winbond W25N01GV (104MHz,x4 bits, 2KB Page/128KB Block/1Gb Device,1-bit/528byte ECC, 3.3V)

  • GigaDevice GD5F1GQ5UEYIG (133MHz,x4 bits, 2KB Page/128KB Block/1Gb Device,4-bit/528byte ECC, 3.3V)

  • Micron MT29F1G01ABA (133MHz,x4 bits, 2KB Page/128KB Block/1Gb Device,8-bit/Sector ECC, 3.3V)

需要注意的是,與 《i.MXRT從Raw NAND啟動》 里既可使用純軟件 ECC 也可利用 Flash 自帶硬件ECC特性,不同的是 Serial NAND 啟動必須依賴Flash 自帶硬件 ECC。

Serial NAND硬件連接

目前i.MXRT1010/1024/1064 不支持 Serial NAND 啟動,其余 i.MXRT1xxx 都可以支持的。其中 i.MXRT10xx 系列只支持一組引腳連接組合,而 i.MXRT11xx 則支持多組引腳連接組合。i.MXRT1050 BootROM 支持如下 pinmux 來連接 Serial NAND 去啟動:

wKgZomToRoyAMCmiAAKhvp2GZhQ567.png

如下是IMXRT1050EVK12_Rev.A 板上四線 QSPI Flash 連接設(shè)計,板載默認 U33 芯片是 Serial NOR Flash,可以換成同封裝 Serial NAND,小編就將其換成了 MX35LF2G24AD 來做測試,當(dāng)然 FLASH_VCC 也相應(yīng)改成了 3.3V:

wKgZomToRoyAcwrRAAGuROuDrFc415.png

Serial NAND加載啟動過程

我們知道Serial NAND 中僅能放置 Non-XIP Application(鏈接到內(nèi)部 SRAM 或者 外部 RAM 空間),其啟動加載流程跟 《從 Serial(1-bit SPI)NOR/EEPROM恢復(fù)啟動》加載流程相近(參考文章第 3 小節(jié))。

i.MXRTBootROM 對于 Serial NAND 啟動流程處理和對于 Raw NAND 啟動處理幾乎是一樣的,都是依賴 FCB 和 DBBT 這兩個數(shù)據(jù)結(jié)構(gòu)(當(dāng)然 Serial NAND 和 Raw NAND 里對于這兩個數(shù)據(jù)結(jié)構(gòu)具體成員定義有差異)。關(guān)于 FCB 和 DBBT 的使用,小編在《i.MXRT從Raw NAND啟動》一文中三、四小節(jié)講得很清楚,這里不再贅述。

i.MXRT1050參考手冊 System Boot 章節(jié)里附上了上電啟動時 BootROM 代碼搜索 FCB 和DBBT 的流程,能找到這兩個數(shù)據(jù),應(yīng)用程序就能夠被正常加載。

這里需要特別注意,F(xiàn)CB 和 DBBT 是在配套 Flashloader 執(zhí)行過程中動態(tài)生成的,因為涉及 NAND Flash 里具體壞塊分布信息,所以無法在 PC 端直接制作 FCB 和 DBBT,這就意味著我們不能像 NOR Flash 那樣提前得到一個完整的啟動頭(FCB&DBBT&IVT&BD)的 NAND bootable image。

wKgZomToRoyAXVwZAAHAUykBw3k391.png

下載Application進Serial NAND

現(xiàn)在假定你已經(jīng)制作好一個 Bootable image 并且使用 blhost 工具與 Flashloader 建立了基本通信,正要開始將 Bootable image 下載進 Serial NAND。此時我們只需要提供簡化的 12 - 44byte 配置數(shù)據(jù)就可以完成 Serial NAND 的全部配置,下面是適用 MX35LF2G24AD 的 Application 下載更新示例:
// 在 SRAM 里臨時存儲 Serial NAND 配置數(shù)據(jù)(FCB Opt)
blhost -u -- fill-memory 0x20202000 0x4 0xC2000103 // searchCount=2, searchStride = 64 pages, Address type: Block Address, Option Block size: 3 long words
blhost -u -- fill-memory 0x20202004 0x4 0x2020200C // nand opt address
blhost -u -- fill-memory 0x20202008 0x4 0x4004     // image0 從 Block 4 開始,長度最大 4 個 Block


// 在 SRAM 里臨時存儲 Serial NAND 配置數(shù)據(jù)(NAND Opt)
blhost -u -- fill-memory 0x2020200C 0x4 0xC0020023 // Flash size: 2Gbit, 1 Plane, 64 Pages/Block, 2KB Page Size, Max Freq:60MHz


// 使用 Serial NAND 配置數(shù)據(jù)去配置 FlexSPI 接口以及寫入完整 FCB, DBBT 數(shù)據(jù)
blhost -u -- configure-memory 0x101 0x20202000

上述fill-memory 命令中 FCB Opt 配置數(shù)據(jù)組織詳見下表:

wKgZomToRoyAUZFPAALtIhoyNm4738.png上述fill-memory 命令中 NAND Opt 配置數(shù)據(jù)組織詳見下表:

wKgZomToRo2Aff7xAAJzIyaIZgI982.png上表12 - 44byte 數(shù)據(jù)提供的配置信息主要是 FCB 和NAND 屬性。configure-memory 命令執(zhí)行成功之后,底下只需要將 Bootable image 從 Serial NAND 對應(yīng) Block 地址處開始下載即可,具體步驟如下:
// 擦除 Serial NAND 并將 image 下載進 Serial NAND
blhost -u -- flash-erase-region 0x4 0x4 0x101     // 從第4個Block開始擦除,范圍為4個Block長度
blhost -u -- write-memory 0x4 bt_image.bin 0x101  // 從第4個Block開始下載含 ivt, bd 的鏡像文件

當(dāng)然以上所有繁雜的命令行操作都可以使用 MCUBootUtility 工具(v5.2.1及以上)來一鍵完成:

wKgZomToRo2AceeFAAMFVYgIHww827.png

進入Serial NAND啟動模式

Application已經(jīng)被成功下載進 Serial NAND 卡之后,此時我們便可以開始設(shè)置芯片從 Serial NAND 啟動。

先確定BOOT_MODE[1:0]=2'b10,即芯片處于 Internal Boot 模式,再來選擇 Boot Device,Boot Device 由 BOOT_CFG1[7:4] 這四個 pin 的輸入狀態(tài)決定,其中 Serial NAND 啟動模式為 4'b11xx。

配置eFuse啟動Serial NAND

設(shè)置好芯片啟動模式是從 Serial NAND 啟動之后,我們還需要最后關(guān)注一下與 Serial NAND 相關(guān)的具體特性配置,主要集中在芯片內(nèi)部 eFuse 0x6e0/0x450 區(qū)域里,根據(jù)前面配置,這里我們只需要設(shè)置BOOT_SEARCH_COUNT bit 為 1,其余保持默認 0 即可。

wKgZomToRo2AJySXAAJPLweRZdc152.png

這里單獨解釋下 COL_ADDRESS_WIDTH 默認 0 即 12bits,看起來對應(yīng)了 4KB Page size,但是因為 ECC 特性,這樣設(shè)置下的低 2KB page 空間存真實數(shù)據(jù),高 2KB page 空間其實屬于所謂 Spare 空間,會被 Flash 自動用來存放 ECC 校驗碼,不過這個 Spare 空間有效范圍 64byte-128byte 不等(對于 MX35LF2G24AD 則是 128)。

wKgZomToRo2AYTTFAAC3czxulO0203.png

上述所有步驟全部完成之后,復(fù)位芯片你就應(yīng)該能看到你放在 Serial NAND 里的 Application 已經(jīng)正常地啟動了。感興趣的伙伴可以實測一下~

END

更多恩智浦AI-IoT市場和產(chǎn)品信息,邀您同時關(guān)注“NXP客?!蔽⑿殴娞?/span>

wKgZomToRo2AGEAvAABCdkRE230958.jpg ? ? ?

NXP客棧


恩智浦致力于打造安全的連接和基礎(chǔ)設(shè)施解決方案,為智慧生活保駕護航。

長按二維碼,關(guān)注我們

恩智浦MCU加油站


這是由恩智浦官方運營的公眾號,著重為您推薦恩智浦MCU的產(chǎn)品信息、開發(fā)技巧、教程文檔、培訓(xùn)課程等內(nèi)容。

wKgZomToRo2AJTwfAAATNlPH08Y807.jpg ?

長按二維碼,關(guān)注我們


原文標(biāo)題:Serial NAND i.MX RT1xxx啟動

文章出處:【微信公眾號:恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17984

    瀏覽量

    367189
  • 恩智浦
    +關(guān)注

    關(guān)注

    14

    文章

    5981

    瀏覽量

    116956

原文標(biāo)題:Serial NAND i.MX RT1xxx啟動

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于恩智浦i.MX RT芯片內(nèi)部RAM運行LVGL工程

    隨著越來越多用戶選擇i.MX RT系列芯片制作產(chǎn)品,產(chǎn)品的需求以及芯片的用法也越來越多。本文將介紹在i.MX RT平臺中,如何創(chuàng)建LVGL項目并將其運行在內(nèi)部SRAM而非SDRAM上。
    的頭像 發(fā)表于 07-01 09:33 ?1156次閱讀
    基于恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>芯片內(nèi)部RAM運行LVGL工程

    如何實現(xiàn)安卓與恩智浦i.MX RT1170的無線投屏與控制

    Scrcpy是一款免費開源的軟件,支持將安卓端屏幕投影到其他設(shè)備,并支持被投屏設(shè)備對安卓的反向控制?;贏DB工具,安卓端無需安裝任何軟件,延遲低,穩(wěn)定性好?,F(xiàn)在,安卓也可投屏到恩智浦i.MX RT1170上。
    的頭像 發(fā)表于 06-26 09:53 ?1286次閱讀
    如何實現(xiàn)安卓與恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1170的無線投屏與控制

    如何禁用i.MX RT1170 MCU中的M4內(nèi)核?

    如何禁用 i.MX RT1170 MCU 中的 M4 內(nèi)核? 您能否提供具體的可行方法? 或者是否可以將內(nèi)核的工作時鐘頻率降低到 0 ?
    發(fā)表于 04-09 07:28

    i.MX RT 1176上正常運行代碼時與使用IAR調(diào)試代碼時存在一些奇怪的差異,為什么?

    ,并且在調(diào)試時一切都按預(yù)期工作,但我發(fā)現(xiàn)當(dāng)處理器正常啟動時,它根本不使用重置向量中的 SP 值,而是將其設(shè)置為(大約)0x20241d80。 我的理解是,i.MX RT 1176 中的 BOOT
    發(fā)表于 03-17 07:26

    NXP i.MX 93 開發(fā)板#提供高效的機器學(xué)習(xí) 支持高能效的邊緣計算

    Wi-Fi ^?^ 和藍牙功能,非常適合工業(yè)和物聯(lián)網(wǎng)應(yīng)用。其主要功能包括HDMI顯示接口、LPDDR4/LPDDR4X存儲器、用于快速啟動的eMMC存儲器、PMIC和擴展選項。該板支持面向i.MX處理器
    的頭像 發(fā)表于 03-10 15:30 ?1380次閱讀
    NXP <b class='flag-5'>i.MX</b> 93 開發(fā)板#提供高效的機器學(xué)習(xí) 支持高能效的邊緣計算

    恩智浦推出FRDM i.MX 93開發(fā)板

    備受嵌入式開發(fā)者青睞的恩智浦FRDM開發(fā)平臺,迎來了一位新成員——FRDM i.MX 93開發(fā)板,這也是第一塊配備i.MX MPU的FRDM開發(fā)板,意味著強大的FRDM生態(tài)合作體系,已經(jīng)擴展到i.MX應(yīng)用處理器。
    的頭像 發(fā)表于 02-21 14:22 ?1504次閱讀

    i.MX RT處理器上使用PXP實現(xiàn)縮放和旋轉(zhuǎn)組合操作

    本文主要探討如何使用PXP實現(xiàn)縮放和旋轉(zhuǎn)組合操作,PXP是NXP推出的一個2D圖形加速器,主要完成對圖像的數(shù)據(jù)格式轉(zhuǎn)換、固定角度旋轉(zhuǎn)(90°,180°,270°),任意比例縮放、混色,移位以及翻轉(zhuǎn)等功能。運行平臺為i.MX RT1170/1160/1060/1050/10
    的頭像 發(fā)表于 02-20 10:53 ?1164次閱讀
    在<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>處理器上使用PXP實現(xiàn)縮放和旋轉(zhuǎn)組合操作

    恩智浦i.MX 94應(yīng)用處理器如何變革工業(yè)和汽車連接

    恩智浦半導(dǎo)體發(fā)布i.MX 94系列應(yīng)用處理器,為工業(yè)和汽車連接設(shè)定了新的標(biāo)準(zhǔn)。作為i.MX 9系列應(yīng)用處理器的最新成員,i.MX 94旨在提供高性能和低延遲的實時計算能力,這是工業(yè)自動化和汽車信息服務(wù)應(yīng)用的關(guān)鍵功能。
    的頭像 發(fā)表于 01-17 10:51 ?941次閱讀

    恩智浦i.MX RT700系列MCU的優(yōu)勢

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

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

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

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

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

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

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

    i.MX Linux開發(fā)實戰(zhàn)指南—基于野火i.MX系列開發(fā)板

    電子發(fā)燒友網(wǎng)站提供《i.MX Linux開發(fā)實戰(zhàn)指南—基于野火i.MX系列開發(fā)板.pdf》資料免費下載
    發(fā)表于 10-10 17:23 ?12次下載

    使用TPS65023的NXP i.MX 7電源設(shè)計

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

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

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