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

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

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

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

XMCD – i.MX RT11xx系列簡單易用的特定外設(shè)配置功能

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

掃碼添加小助手

加入工程師交流群

從i.MX RT1160/ RT1170 B0以及后續(xù)的RT1180開始,BootROM引入了XMCD新功能,其用途與傳統(tǒng)DCD功能(之前文章介紹過)類似。DCD可以實現(xiàn)對芯片指定外設(shè)的配置,常常用于配置SEMC去初始化 SDRAM。但DCD僅支持寄存器操作,因此用戶需要從寄存器角度去理解去配置,這種方式較為復(fù)雜且對用戶來說不夠友好,對于具有復(fù)雜時序配置要求的外設(shè)來說更加難以使用。

基于此,BootROM推出了XMCD,以一種對用戶更友好更直觀的方式對 SDRAM/HyperRAM等外設(shè)進(jìn)行配置。

不過大家可能并不熟悉該功能或者還沒真正的去使用過,今天就以RT1170上的XMCD為例帶大家一探究竟。

1. 何為XMCD

XMCD全稱ExternalMemory Configuration Data,是i.MX RT11xx系列芯片BootROM中的新功能,與DCD類似,用于應(yīng)用程序啟動前對系統(tǒng)外設(shè)進(jìn)行特定配置。XMCD數(shù)據(jù)塊位于IVT頭偏移0x40的位置,由XMCD頭和外設(shè)特定配置塊組成。 XMCD支持配置的設(shè)備類型及相應(yīng)的配置塊如下所示:

  • HyperRAM/APMemory (FlexSPI接口) – FlexSPI RAM 配置塊

  • SDRAM (SEMC接口) – SEMC SDRAM 配置塊

XMCD頭的定義如圖1所示:

wKgaomU5wAGAJvRgAAEpzfTMgQE936.png圖1 XMCD頭

其中,[19:16]和[15:11]域僅對FlexSPI接口的外設(shè)有效,當(dāng)選擇SEMC接口時,這些區(qū)域被忽略,設(shè)為0即可。[11:0]域用于設(shè)置XMCD數(shù)據(jù)塊的總大小,等于XMCD頭大小+配置塊大小。

下面分別介紹兩種外設(shè)配置塊:

1.1 FlexSPI RAM配置塊

FlexSPI RAM 配置塊用于配置連接到FlexSPI接口的HyperRAM或者APMemoryPSRAM外設(shè)。提供了簡化版和完整版兩種配置方式供用戶選擇。

其中,簡化版配置可以滿足大部分HyperRAM 或 APMemory 外設(shè)的典型應(yīng)用。如圖2所示,用戶僅需要簡單配置設(shè)備類型,頻率,PINMUX等參數(shù)即可成功初始化外設(shè)。

wKgaomU5wAGAcPvmAANwep57YZw721.png圖 2 簡化版配置

當(dāng)然,如果用戶需要啟用一些高級功能,XMCD還提供了完整的512字節(jié)FlexSPI RAM配置塊以支持靈活的配置。具體的配置內(nèi)容詳見RT1170 Reference Manual的10.8.2.2章節(jié)。

1.2 SEMC SDRAM配置塊SEMC SDRAM配置塊用于配置連接到SEMC接口的SDRAM設(shè)備。與FlexSPI類似,也提供了簡化版和完整版兩種配置方式供用戶選擇。

XMCD提供了68字節(jié)數(shù)據(jù)結(jié)構(gòu)用于SDRAM配置,圖3展示了數(shù)據(jù)結(jié)構(gòu)的前10字節(jié)內(nèi)容。當(dāng)選擇簡化配置時(即圖中config_option設(shè)為0x00),僅需要配置該數(shù)據(jù)結(jié)構(gòu)的前9個字節(jié),即時鐘頻率,設(shè)備大小和port大小,不過該配置僅適用于連接到CS0的SDRAM外設(shè)且SDRAM相關(guān)參數(shù)是固定的,若外設(shè)連接到其他CS或當(dāng)前參數(shù)無法成功初始化SDRAM,則需要使用完整配置。

若選擇完整配置(即圖中config_option設(shè)為0xFF),則需要配置整個68字節(jié)。完整數(shù)據(jù)結(jié)構(gòu)詳見Reference Manual第10.8.3.1章節(jié)。

wKgaomU5wAGABQl3AAIy0lX-uhg820.png圖3 SDRAM配置數(shù)據(jù)結(jié)構(gòu)(前10字節(jié))

2. 如何使用XMCD

2.1 SDK的使用

RT1170 SDK從 2.12.0開始,就已經(jīng)加入了XMCD功能且boot的時候默認(rèn)使用XMCD初始化SDRAM,并采用簡化版配置。

任意打開一個示例工程,都會包含xmcd.c/h文件,當(dāng)工程選項預(yù)編譯宏里有XIP_BOOT_HEADER_XMCD_ENABLE=1時被使能。

wKgaomU5wAKAa_lvAAN-DxB1pQ8324.png圖4工程文件中的XMCD

不過SDK里面僅實現(xiàn)了使用XMCD簡化配置初始化SDRAM,對于FlexSPI外設(shè)的初始化或者完整配置需要用戶參考現(xiàn)有XMCD代碼,結(jié)合前面介紹的SEMC/FlexSPI配置塊的定義進(jìn)行具體配置。

2.2 使用MCUBootUtility工具

NXP-MCUBootUtility是一款功能強(qiáng)大的一站式安全加密啟動工具,其v5.3.2版本可以支持XMCD功能進(jìn)行FlexSPI和SEMC外設(shè)的配置。

下載地址:https://github.com/JayHeng/NXP-MCUBootUtility/releases/tag/v5.3.2

該工具的XMCD配置界面如圖5所示:

wKgaomU5wAKAarMPAALy2e496Y0221.png圖5XMCD配置界面

該工具目前只有簡化配置支持界面直接配置,完整配置需要用戶生成相應(yīng)的XMCD bin文件(該文件由XMC頭與外設(shè)配置塊組成)然后導(dǎo)入。

選擇Use XMCD option即可進(jìn)行外設(shè)的簡化配置,如圖6所示,選擇SEMC或FlexSPI接口,然后在下方對應(yīng)區(qū)域填入所需參數(shù)即可。

wKgaomU5wAKAWHuYAAE4oXxXOYo533.png

圖6

XMCD簡化配置

配置完XMCD后,用戶需要再準(zhǔn)備一份應(yīng)用程序,該應(yīng)用程序鏈接到對應(yīng)外設(shè)地址中,且不用帶boot header,然后導(dǎo)入工具,執(zhí)行All-In-One Action 操作就可以成功生成可啟動文件并下載到板卡中去執(zhí)行。

圖7是讀回來的可啟動文件,可以看到在IVT頭偏移0x40的位置便是相應(yīng)的XMCD數(shù)據(jù)。

wKgaomU5wAKANKJcAAP3ejvrRxA245.png圖7 可啟動文件中的XMCD數(shù)據(jù)

3. 參考資料

1. i.MXRT1170 Processor Reference Manual

2. 痞子衡嵌入式:MCUBootUtility v5.3發(fā)布,利用XMCD輕松使能外部RAM

END

更多恩智浦AI-IoT市場和產(chǎn)品信息,邀您同時關(guān)注“NXP客棧”微信公眾號

wKgaomU5wAKADW9qAABCdkRE230350.jpg ? ? ?

NXP客棧


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

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

恩智浦MCU加油站


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

wKgaomU5wAOATZJzAAATNlPH08Y828.jpg ?

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


原文標(biāo)題:XMCD – i.MX RT11xx系列簡單易用的特定外設(shè)配置功能

文章出處:【微信公眾號:恩智浦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

    文章

    17956

    瀏覽量

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

    關(guān)注

    14

    文章

    5976

    瀏覽量

    116016

原文標(biāo)題:XMCD – i.MX RT11xx系列簡單易用的特定外設(shè)配置功能

文章出處:【微信號: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項
    的頭像 發(fā)表于 07-01 09:33 ?881次閱讀
    基于恩智浦<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 ?1163次閱讀
    如何實現(xiàn)安卓與恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1170的無線投屏與控制

    i.MX RT系列中FlexSPI DQS信號引腳配置GPIO方法

    i.MX RT060項目(采用QSPI Flash)的實際應(yīng)用中,有客戶反饋,其在設(shè)計階段并未預(yù)留DQS信號引腳,而是將該引腳作為GPIO用于控制關(guān)鍵外設(shè)的開關(guān),這導(dǎo)致程序無法正常運行。在此背景下
    的頭像 發(fā)表于 06-16 11:30 ?657次閱讀
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b><b class='flag-5'>系列</b>中FlexSPI DQS信號引腳<b class='flag-5'>配置</b>GPIO方法

    NXP i.MX RT1060移植TinyUSB:快速擴(kuò)展大量USB Class示例

    前言 ? 為啥是TinyUSB?給強(qiáng)大的RT配個輕巧的USB棧! USB這個讓我們方便快捷的接口,幾乎無處不在。在嵌入式世界里,尤其是用上了像NXP i.MX RT這樣性能強(qiáng)勁的跨界MCU,我們自然
    的頭像 發(fā)表于 05-15 09:25 ?1104次閱讀
    NXP <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1060移植TinyUSB:快速擴(kuò)展大量USB Class示例

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

    ROM 因此與 i.MX RT 10xx 部分中的 BOOT ROM 不兼容,其中 SP 是從重置向量中的值設(shè)置的,這意味著 SP 值must改為在 startup code 中設(shè)置。 IAR 調(diào)試器在
    發(fā)表于 03-17 07:26

    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 RT
    的頭像 發(fā)表于 02-20 10:53 ?1143次閱讀
    在<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旨在提
    的頭像 發(fā)表于 01-17 10:51 ?908次閱讀

    恩智浦i.MX RT1180 EtherCAT外設(shè)中SM FMMU功能介紹及應(yīng)用

    NXP的i.MX RT1180 crossoverMCU具有Arm Cortex-M7(CM7)和Cortex-M33(CM33)雙內(nèi)核,CM7內(nèi)核的運行速度可達(dá)800 MHz,CM33內(nèi)核的運行
    的頭像 發(fā)表于 01-16 09:17 ?2236次閱讀
    恩智浦<b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1180 EtherCAT<b class='flag-5'>外設(shè)</b>中SM FMMU<b class='flag-5'>功能</b>介紹及應(yīng)用

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

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

    恩智浦發(fā)布i.MX 94系列應(yīng)用處理器

    恩智浦半導(dǎo)體發(fā)布i.MX 9系列應(yīng)用處理器的新成員i.MX 94系列。該系列旨在用于工業(yè)控制、可編程邏輯控制器(PLC)、遠(yuǎn)程信息處理、工業(yè)
    的頭像 發(fā)表于 11-26 17:48 ?1418次閱讀

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

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

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

    i.MX RT微控制器上初始化LWIP協(xié)議棧是一個復(fù)雜但有趣的過程,它涉及多個步驟和關(guān)鍵組件的配置.
    的頭像 發(fā)表于 10-12 11:48 ?814次閱讀
    如何在<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),可在邊緣端提供高達(dá)172倍的AI加速。
    的頭像 發(fā)表于 10-12 11:41 ?1283次閱讀

    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次下載

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

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