<style id="7i3y3"></style>

      <sub id="7i3y3"><i id="7i3y3"></i></sub>

        午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
        中國自動化學(xué)會專家咨詢工作委員會指定宣傳媒體
        新聞詳情

        【深度實戰(zhàn)】米爾RK3576開發(fā)板AMP非對稱多核開發(fā)指南:從配置到實戰(zhàn)

        http://m.kblhh.cn 2025-12-05 14:26 來源:米爾電子

        一、什么是AMP?為什么重要?

        AMP(Asymmetric Multi-Processing)非對稱多處理架構(gòu),允許單個芯片的不同核心運行不同的操作系統(tǒng)或裸機程序。相比傳統(tǒng)的SMP(對稱多處理),AMP具有獨特優(yōu)勢。

        核心特性:

        •異構(gòu)運算:不同核心運行最適合的操作系統(tǒng),如Linux處理復(fù)雜應(yīng)用,RT-Thread保障實時任務(wù)

        •資源隔離:各核心擁有獨立內(nèi)存空間,避免資源沖突

        •靈活通信:通過共享內(nèi)存、RPMSG等方式實現(xiàn)高效核間通信

        商業(yè)價值:

        •成本優(yōu)化:單芯片替代多芯片方案,減少PCB面積和元器件數(shù)量

        •開發(fā)靈活:支持Linux、RT-Thread、裸機程序的自由組合

        •系統(tǒng)可靠:故障隔離,關(guān)鍵任務(wù)永不掉線

        二、實戰(zhàn)選型:MYD-LR3576的AMP硬件基礎(chǔ)

        米爾核心板 MYD-LR3576 基于 RK3576 處理器,集成三大核心集群:AP 端配備 4 顆 ARM Cortex-A72 與 4 顆 ARM Cortex-A53 核心,MCU 端搭載 1 顆 ARM Cortex-M0 核心,通過 AMP 架構(gòu)實現(xiàn)多系統(tǒng)異構(gòu)運行,在成本優(yōu)化與開發(fā)靈活性上展現(xiàn)突出優(yōu)勢。

        米爾基于RK3576開發(fā)板

        三大核心集群:

        系統(tǒng)支持:

        已驗證AMP方案:

        •AP+AP架構(gòu):Linux + RT-Thread/Bare-metal

        •AP+MCU架構(gòu):Linux + MCU RT-Thread/Bare-metal

        三、實戰(zhàn)操作:AMP 系統(tǒng)串口資源配置

        實戰(zhàn)目標(biāo):基于MYD-LR3576開發(fā)板,詳細講解Linux與RT-Thread側(cè)的串口資源配置全流程,實現(xiàn)從理論到實踐的完整落地。

        3.1 Linux 側(cè)串口資源的剝離與分配

        在 AMP 架構(gòu)中,若需將 UART6 分配給 RT-Thread 從核使用,需先在 Linux 設(shè)備樹中完成資源剝離,避免 Linux 內(nèi)核對該外設(shè)的占用。

        1.    失能UART6: Linux 設(shè)備樹通過節(jié)點狀態(tài)配置控制外設(shè)的啟用 / 禁用。對于 UART6,需在其節(jié)點中添加 “status = "disabled"” 屬性,明確告知 Linux 內(nèi)核:該串口不再由 Linux 管理。

        &uart6 {

        status = "disabled";  // 剝離Linux對UART6的控制權(quán)

        };

        2.    分配UART6 資源

        剝離后的 UART6 資源需通過 rockchip_amp 節(jié)點重新分配給從核,配置內(nèi)容包括時鐘資源、引腳功能與中斷路由:

        &rockchip_amp {

        clocks = <...>, <&cru SCLK_UART6>, <&cru PCLK_UART6>;

        pinctrl-0 = <&uart6m3_xfer>;

        amp-irqs = <GIC_AMP_IRQ_CFG_ROUTE(114, CPU_GET_AFFINITY(3, 0))>;

        };

        3.    分配從核內(nèi)存

        為避免 Linux 內(nèi)核占用從核的運行內(nèi)存,需在 reserved-memory 節(jié)點中劃分專屬內(nèi)存區(qū)域。例如,為 RT-Thread 從核預(yù)留 8MB 內(nèi)存:

        amp_reserved: amp@41800000 {

        reg = <0x0 0x41800000 0x0 0x00800000>; // 起始地址0x41800000,大小8MB

        no-map; // 禁止Linux映射該區(qū)域,確保從核獨占

        };

        3.2 RT-Thread 側(cè) UART6 的初始化與啟用

        Linux 側(cè)完成資源剝離后,需在 RT-Thread 中對 UART6 進行初始化,使其具備通信能力。RT-Thread 的配置流程主要包括引腳復(fù)用、中斷路由與外設(shè)使能三步。

        1.    UART6 引腳復(fù)用配置

        RK3576 的引腳支持多功能復(fù)用,UART6 的 TX/RX 引腳需配置為對應(yīng)功能模式(如 Func13)。通過 RT-Thread 的硬件抽象層(HAL)接口,可直接完成引腳功能的配置:

        #ifdef RT_USING_UART6

        uart6_m3_iomux_config();

        #endif

        void uart6_m3_iomux_config(void)

        {

        HAL_PINCTRL_SetIOMUX(GPIO_BANK4, GPIO_PIN_C5, PIN_CONFIG_MUX_FUNC13);

        HAL_PINCTRL_SetIOMUX(GPIO_BANK4, GPIO_PIN_C4, PIN_CONFIG_MUX_FUNC13);

        }

        2.    UART6 中斷路由配置

        為確保 UART6 的中斷能被 CPU3(從核)響應(yīng),需通過 GIC 中斷控制器的路由配置,將 UART6 的中斷號與 CPU3 綁定。RT-Thread 提供了簡潔的條件編譯選項:

        #ifdef RT_USING_UART6

        GIC_AMP_IRQ_CFG_ROUTE(UART6_IRQn, 0xd0, CPU_GET_AFFINITY(3, 0));

        #endif

        3.    UART6 RTOS側(cè)使能

        通過在 RT-Thread 的配置文件中啟用對應(yīng)選項,使能 UART6條件編譯:

        CONFIG_RT_CONSOLE_DEVICE_NAME="uart6"

        CONFIG_RT_USING_UART6=y

        四、編譯部署:AMP系統(tǒng)鏡像構(gòu)建

        4.1 編譯鏡像

        完成配置后,返回 SDK 工程根目錄,執(zhí)行編譯腳本:

        cd MYD-LR3576

        ./build.sh lunch

        1. rockchip_defconfig

        2. rockchip_rk3576_myd_lr3576_amp_defconfig

        3. rockchip_rk3576_myd_lr3576_defconfig

        4. rockchip_rk3576_myd_lr3576_mcu_defconfig

        Which would you like? [1]: 2

        ....

        ./build.sh # 完整編譯

        編譯成功后,生成的系統(tǒng)鏡像文件路徑為:

        ls output/update/Image/update.img

        update.img

        4.2 燒錄鏡像至開發(fā)板

        請使用瑞芯微官方燒錄工具 RKDevTool 將鏡像寫入開發(fā)板。

        五、功能驗證

        5.1 驗證環(huán)境搭建

        連接開發(fā)板 Debug 口:串口參數(shù)設(shè)為 115200 波特率、8 數(shù)據(jù)位、1 停止位、無校驗位;

        連接開發(fā)板 UART6 串口(具體位置如下圖):參數(shù)設(shè)為 1500000 波特率、8 數(shù)據(jù)位、1 停止位、無校驗位。

        5.2 主核驗證(Linux終端)

        打開主核debug終端,輸入lscpu命令查看CPU信息,若Cortex-A53核心數(shù)量顯示為3(原4顆,1顆分配給RT-Thread),說明主核配置生效:

        lscpu

        # 輸出結(jié)果中Cortex-A53核心數(shù)為3

        5.3 從核驗證(RT-Thread終端)

        打開UART6對應(yīng)的串口終端(波特率默認150000),若能看到RT-Thread的啟動日志,說明從核系統(tǒng)已成功運行,UART6外設(shè)正常工作。

        六、總結(jié)

        本次串口資源配置實戰(zhàn),清晰地驗證了外設(shè)從Linux側(cè)剝離、再分配至RT-Thread側(cè)的核心方法論。這僅是AMP靈活性的起點,基于相同的配置邏輯,開發(fā)者還可將GPIO、I2C、SPI等更多外設(shè)進行精細化分配。

        這種靈活的異構(gòu)計算模式,使其能夠無縫適配多類對性能、實時性與功耗有綜合要求的工業(yè)與嵌入式場景。其典型應(yīng)用模式可歸納如下:

        1.    工業(yè)網(wǎng)關(guān):Linux運行網(wǎng)絡(luò)協(xié)議棧、數(shù)據(jù)庫與Web服務(wù),實現(xiàn)數(shù)據(jù)上云與遠程管理;RT-Thread則實時采集PLC數(shù)據(jù)、精準(zhǔn)控制執(zhí)行器,保障工業(yè)現(xiàn)場毫秒級響應(yīng)與確定性。

        2.    機器人控制器:Linux承載SLAM算法、視覺感知、路徑規(guī)劃與人機交互界面;RT-Thread專責(zé)多軸電機閉環(huán)控制、高頻率傳感器融合及硬實時安全連鎖。

        3.    智能音視頻設(shè)備:Linux處理高清音視頻編解碼、AI模型推理及云服務(wù)對接;獨立Cortex-M0核心則實現(xiàn)低功耗待機、語音關(guān)鍵詞喚醒與觸控檢測,顯著優(yōu)化系統(tǒng)功耗與響應(yīng)速度。

        AMP架構(gòu)的價值,正是在于讓開發(fā)者能夠根據(jù)場景需求,在同一硬件平臺上自由調(diào)配計算資源,實現(xiàn)性能、成本與功耗的最佳平衡。

        版權(quán)所有 工控網(wǎng) Copyright?2025 Gkong.com, All Rights Reserved
        主站蜘蛛池模板: 女人把腿张开男人来桶| 在线亚洲+欧美+日本专区| 2020国产免费久久精品99| 久久青青草原精品国产app| 老司机亚洲精品一区二区| 在线精品自拍亚洲第一区| 91亚洲一线产区二线产区| 中文字幕日韩精品国产| 一区二区三区午夜无码视频| 免费无码高潮流白浆视频| 国产欧美另类久久久精品丝瓜| 久久99久国产精品66| 国产精品午夜福利资源| 国产69精品久久久久99尤物| 国产福利姬喷水福利在线观看| 国产精品青草视频免费播放| 就去色最新网址| 亚洲一区二区三区自拍天堂| 国产成人AV大片大片在线播放| 国产无遮挡又黄又爽不要vip软件 国产成人精品一区二区秒拍1o | 欧洲美熟女乱av在免费| 国产成人综合在线女婷五月99播放| 亚洲高潮喷水无码AV电影| 亚洲精品国产综合久久久久紧| 亚洲高清免费在线观看| 免费一级黄色好看的国产| 国产偷窥熟女高潮精品视频| 久草网视频在线观看| 40岁成熟女人牲交片| 国产11一12周岁女毛片| 久久精品国产99麻豆蜜月| 国产精品三级中文字幕| 99久久激情国产精品| 99精品国产一区二区三区| 久久人体视频| 一区二区中文字幕久久| 日本一区二区三区内射| 亚洲一级毛片免费观看| 欧美性猛交xxxx乱大交极品| 亚洲自拍偷拍福利小视频| 久久亚洲中文字幕伊人久久大|