国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

DR1 系列評估板 OpenAMP 雙核 ARM 通信案例開發手冊

Tronlong創龍科技 ? 來源:Tronlong創龍科技 ? 作者:Tronlong創龍科技 ? 2026-01-21 15:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前 言

本文主要介紹基于OpenAMP框架的雙核ARM通信案例使用說明。

開發環境

Windows開發環境:Windows10 64bit

開發工具:TD_5.9.1_DR1_2025.1_NL、FD_2025.1_SP1

術語表

為便于閱讀,下表對文檔出現的關鍵術語進行解釋;對于廣泛認同釋義的術語,在此不做注釋。

wKgZO2lwfA2AZuL_AABc2ROKNvY517.png

注意事項

案例位于產品資料“4-軟件資料Demoamp_demos”目錄下,案例目錄詳細說明見下表。

wKgZPGlwfBSAEz4oAAAkiTFmFlc648.png

1OpenAMP使用說明

OpenAMP是一個標準化的嵌入式多核框架,主要針對AMP應用場景提供RTOS和裸機程序必要的管理和通信接口。它兼容了Linux的Remoteproc和Rpmsg設計,為遠程核心(Remoteprocessors)提供了軟件組件,使得用戶能夠快速地搭建一套標準的核間交互應用場景。

在安路多核異構系統中,APU0作為OpenAMP的Master端,運行Linux系統;APU1作為OpenAMP的Slave端,運行Baremetal或FreeRTOS程序。其中,APU0使用remoteproc(即Rproc)加載APU1程序,并對APU1進行配置。

wKgZO2lwfBqAdkUNAAFKtcz85Dk007.png圖 1

目前TLDR1-EVM支持的OpenAMP場景組合如下表。

wKgZO2lwfCGANVAlAAARdQzrtN4195.png

2amp_rpmsg_echo案例

2.1案例功能

案例功能:APU0使用RPMsg向APU1發送數據,APU1接收到數據后再使用RPMsg向APU0回傳數據。APU0對回傳的數據進行驗證,并輸出驗證結果。

2.2TD工程說明

請參考《Linux系統開發手冊》的“FSBL TD工程說明”章節。

2.2.1IP核簡介

IP核開發相關資料可查閱產品資料“6-開發參考資料Anlogic官方參考文檔”目錄下文檔,IP核配置參數如下。

(1)ARM Processor System

ARM Processor System IP核心配置和FSBL工程基本一致,其他詳細配置可參考位于產品資料“4-軟件資料LinuxFSBLfsbl-[版本號]”目錄下的FSBL工程。

2.3FD工程說明

Baremetal和FreeRTOSFD工程注意事項如下:

(1)創建Platform Project工程時"Processor"選擇"apu-1"。

備注:生成Baremetal FD工程時,"Operating system"選擇"standalone";生成FreeRTOSFD工程時,"Operating system"選擇"freertos"。

wKgZPGlwfCmAFUyWAANNcP1ClSg121.png圖 2

(2)生成Platform Project工程后雙擊"system.mss"后繼續點擊"Modify this BSP's Settings"修改相關配置。

wKgZO2lwfceABKQeAADgFX3tewc744.png圖 3

(3)點擊"library"選項勾選"LIB_METAL"和"LIB_OPENAMP",若不勾選這兩個板級支持包將會無法正常創建OpenAMP應用。

wKgZPGlwfc-AT8ioAABwi6ZkvCM637.png圖 4

(4)點擊"platform"選項將"OUTPUT_DEV"中的Value值設置為"UART0",若不設置該選項將會導致主機和從機使用同一串口,導致沖突。

wKgZO2lwfdiACqCSAACUGncCvsQ740.png圖 5

(5)創建Applicable project工程時直接選擇"DEMO_OPENAMP_RPMSG_ECHO"應用。

wKgZPGlwff-APwu0AADlLn6n6N8230.png圖 6

2.4案例測試

請將產品資料“4-軟件資料Demoamp_demosamp_rpmsg_echolinux_demodtsimage”目錄下的dtb.bin文件拷貝至評估板文件系統目錄下。執行如下命令替換系統默認設備樹文件,評估板重啟生效。

Target# mv dtb.bin/boot/dtb.bin

Target# reboot

wKgZO2lwfi2AcJmYAAAHguovPBA615.png圖 7

評估板上電啟動后,在U-Boot倒計時結束之前長按"Ctrl + C"進入U-Boot命令行模式,執行如下命令,修改環境變量。

U-Boot# setenv mmc_boot 'if mmc dev ${devnum}; then devtype=mmc; if test ${devnum} -eq 0; then setenv bootargs '"'"'console=ttyS1,115200n8 earlycon=uart,mmio32,0xf8401000 loglevel=8 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait maxcpus=1=1'"'"'; fi; if test ${devnum} -eq 1; then setenv bootargs '"'"'console=ttyS1,115200n8 earlycon=uart,mmio32,0xf8401000 loglevel=8 root=/dev/mmcblk1p2 rw rootfstype=ext4 rootwait maxcpus=1'"'"'; fi; ext4load mmc ${devnum}:2 ${kernel_addr_r} ${bootdir}/${kernel_image}; ext4load mmc ${devnum}:2 ${fdt_addr_r} ${bootdir}/${devicetree_image}; bootm ${kernel_addr_r} - ${fdt_addr_r}; run scan_dev_for_boot_part2; fi'

U-Boot# saveenv

U-Boot# reset

wKgZPGlwfjqAegoEAABqGuP5TTI814.png圖?8

如需恢復U-Boot環境變量,在U-Boot命令行模式執行以下命令。

U-Boot# env default -a-f

U-Boot# saveenv

U-Boot# reset

wKgZPGkmlrOAZQkFAAAKhGVVYnk073.png圖?9

進入評估板文件系統,執行如下命令,查看環境變量是否設置成功,確保只有一個核心被使用。

Target# cat /proc/cpuinfo

wKgZPGlwfw6ACYJGAAAZLAAU3MY274.png圖 10

將APU1 Baremetal或FreeRTOS可執行文件拷貝至評估板文件系統"/lib/firmware/"目錄下(若該目錄不存在,請新建),并執行如下命令加載APU1程序。本次以Baremeta程序進行演示,如需測試FreeRTOS程序請修改命令中對應的可執行文件名稱。

Target# mkdir -p /lib/firmware

Target# cp amp_rpmsg_echo_baremetal_a35.elf /lib/firmware/

Target# echo amp_rpmsg_echo_baremetal_a35.elf > /sys/class/remoteproc/remoteproc0/firmware

Target# echo start > /sys/class/remoteproc/remoteproc0/state

wKgZPGlwfyOAHBxUAAA27Dr-NiE632.png圖 11

將產品資料“4-軟件資料Demoamp_demosamp_rpmsg_echolinux_demobin”目錄下的APU0應用程序可執行文件echo_test拷貝至評估板文件系統,執行如下命令,通過RPMsg實現與APU1進行通信。

Target# chmod +x echo_test

Target# ./echo_test

wKgZPGlwhYmAEUN0AAA2RCx0jSU445.png圖 12

wKgZPGlwhZqAJcsFAAAuDnmenac245.png圖 13

執行如下命令,停止APU1程序。

Target# echo stop > /sys/class/remoteproc/remoteproc0/state

wKgZPGlwhaKAbKA9AAAPh_gAR0Y434.png圖 14

2.5案例編譯

2.5.1設備樹編譯

將案例"linux_demodtssrc"目錄下tldr1-evm.dts設備樹拷貝至LinuxSDK源碼"linux/arch/arm64/boot/dts/anlogic"目錄下。

wKgZPGlwhaiANQK_AABIklefRuk073.png圖?15

請按照《Linux系統開發手冊》文檔“LinuxSDK配置與編譯”章節,重新編譯LinuxSDK即可生成新的設備樹鏡像文件,位于LinuxSDK源碼"device/output/anlogic_dr1m90/image"目錄下。

wKgZO2lwha6AO_6uAABKSv5ebWg722.png圖 16

2.5.2APU0應用程序編譯

請參考《Linux系統開發手冊》文檔編譯LinuxSDK,并將APU0應用程序源碼src目錄拷貝至Ubuntu,然后在源碼目錄下執行如下命令修改Makefile文件。工具鏈路徑請以實際情況進行修改。

wKgZO2lwhbaAEMvhAABWFXTLbbI193.png圖 17

修改內容如下:

CC = /home/tronlong/DR1/SDK_2025.1/toolchains/aarch64-linux/bin/aarch64-linux-gnu-gcc

wKgZPGlwhb2AS5LWAACBjOj5Yl8526.png圖 18

修改完成保存后,在源碼目錄下執行如下命令進行編譯。

Host# make

wKgZPGlwhc6AcKCpAACHJmrijuw268.png圖 19

2.5.3APU1baremetal與FreeRTOS程序編譯

請參考《TD-FD工程編譯與加載》進行工程編譯。

2.6關鍵代碼

2.6.1linux_demo代碼說明

linux_demo程序的echo_test.c文件位于案例"linux_demosrc"目錄下。

(1)加載RPMsg_char驅動。

wKgZPGlwhkaAXyYkAAA5cLPPvMg978.png圖 20

(2)綁定RPMsg設備并獲取RPMsg驅動。

wKgZPGlwhk2AE_24AABsB9SJHEM264.png圖 21

(3)創建RPMsg端點。

wKgZO2lwhlSARXWyAAB2LiZkbPU976.png圖 22

(4)打開RPMsg驅動設備節點。

wKgZO2lwhluAVIO6AABF0NjP_DE363.png圖 23

(5)分配內存,進行數據收發測試。

wKgZO2lwho-APO1pAAFfDYzqHMk363.png圖 24

wKgZPGlwho-Ab1H9AADvDhHcdwQ047.png圖 25

2.6.2baremetal_demo代碼說明

baremetal_demo程序的rpmsg-echo.c文件位于案例

"baremetal_demoprojectamp_rpmsg_echo_a35amp_rpmsg_echosrcsystemgeneric"目錄下。

(1)main()函數調用openamp_sample()函數進行系統初始化。

wKgZO2lwhp-ADeIcAAA66ecAWiY740.png圖 26

(2)openamp_sample()函數初始化系統、創建設備、調用app函數、釋放設備。

wKgZO2lwhqaAUdIpAAEchp-IIEE899.png圖 27

wKgZO2lwhrCAAvoVAAAsrB6LXTI911.png圖 28

(3)創建RPMsg端點、進行消息處理和檢測、最后銷毀RPMsg端點。

wKgZO2lwhriAYc8tAAC1GFk9LIA347.png圖 29

2.6.3freertos_demo代碼說明

由于FreeRTOS與Baremetal程序相似,freertos_demo代碼說明可參考baremetal_demo代碼說明小節。


審核編輯 黃宇

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

    關注

    135

    文章

    9553

    瀏覽量

    391867
  • Amp
    Amp
    +關注

    關注

    0

    文章

    100

    瀏覽量

    48495
  • Open
    +關注

    關注

    0

    文章

    24

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    DR1 系列評估 eMMC 健康管理案例開發手冊:信息查詢與壽命監控

    本文為創龍科技DR1 系列評估 eMMC 健康管理案例指南,核心是通過 emmc_get_info 程序讀取 eMMC 健康信息。內容涵蓋 EXT_CSD 寄存器查詢、擦寫次數統計、
    的頭像 發表于 01-22 15:24 ?191次閱讀
    <b class='flag-5'>DR1</b> <b class='flag-5'>系列</b><b class='flag-5'>評估</b><b class='flag-5'>板</b> eMMC 健康管理案例<b class='flag-5'>開發</b><b class='flag-5'>手冊</b>:信息查詢與壽命監控

    DR1 系列評估 PS 端裸機與 FreeRTOS 開發案例手冊

    本文為創龍科技DR1 系列評估 PS 端裸機與 FreeRTOS 開發指南,涵蓋三大核心案例與雙開發
    的頭像 發表于 01-19 17:12 ?148次閱讀
    <b class='flag-5'>DR1</b> <b class='flag-5'>系列</b><b class='flag-5'>評估</b><b class='flag-5'>板</b> PS 端裸機與 FreeRTOS <b class='flag-5'>開發</b>案例<b class='flag-5'>手冊</b>

    DR1 系列核心 PS+PL 異構多核實戰案例手冊(二)

    本文為創龍科技DR1 系列評估 PS+PL 異構多核開發指南,涵蓋 9 類核心案例與關鍵技術實現。核心內容包括 AXI 總線與 PS_PL
    的頭像 發表于 01-14 17:23 ?4629次閱讀
    <b class='flag-5'>DR1</b> <b class='flag-5'>系列</b>核心<b class='flag-5'>板</b> PS+PL 異構多核實戰案例<b class='flag-5'>手冊</b>(二)

    DR1 系列核心 PS+PL 異構多核實戰案例手冊(一)

    本文為創龍科技DR1 系列評估 PS+PL 異構多核開發指南,涵蓋 9 類核心案例與關鍵技術實現。核心內容包括 AXI 總線與 PS_PL
    的頭像 發表于 01-14 15:37 ?166次閱讀
    <b class='flag-5'>DR1</b> <b class='flag-5'>系列</b>核心<b class='flag-5'>板</b> PS+PL 異構多核實戰案例<b class='flag-5'>手冊</b>(一)

    DR1 評估 PL 端 FPGA 開發完全指南:基礎案例與 ADC 采集模塊詳解(一)

    本文為創龍科技DR1 系列評估 PL 端 FPGA 開發案例指南,涵蓋 led_flash、key_led 及三款 ADC 采集案例。核心
    的頭像 發表于 01-08 15:46 ?204次閱讀
    <b class='flag-5'>DR1</b> <b class='flag-5'>評估</b><b class='flag-5'>板</b> PL 端 FPGA <b class='flag-5'>開發</b>完全指南:基礎案例與 ADC 采集模塊詳解(一)

    DR1M90 評估 TD-FD 工程與 Linux 多場景應用開發指南

    本文為創龍科技DR1 系列評估 TD-FD 工程編譯與加載手冊,系統講解 TD/FPGA 工程與 FD/SoC 工程的全流程
    的頭像 發表于 01-07 11:37 ?586次閱讀
    <b class='flag-5'>DR1</b>M90 <b class='flag-5'>評估</b><b class='flag-5'>板</b> TD-FD 工程與 Linux 多場景應用<b class='flag-5'>開發</b>指南

    DR1平臺Linux應用開發指南:含GDB調試、Python及MQTT實戰

    本文為創龍科技DR1 系列評估 Linux 應用開發手冊,系統講解
    的頭像 發表于 01-05 16:48 ?4571次閱讀
    <b class='flag-5'>DR1</b>平臺Linux應用<b class='flag-5'>開發</b>指南:含GDB調試、Python及MQTT實戰

    安路DR1M90評估:從基礎外設到通信模塊測試指南

    手冊由創龍科技研發,針對安路飛龍 DR1M90 評估,詳述 Linux 系統下功能測試流程。含系統啟動驗證,LED、按鍵、DDR 等基礎外設測試,ETH、WiFi、4G、GPS 等
    的頭像 發表于 11-20 15:26 ?1415次閱讀
    安路<b class='flag-5'>DR1</b>M90<b class='flag-5'>評估</b><b class='flag-5'>板</b>:從基礎外設到<b class='flag-5'>通信</b>模塊測試指南

    【米爾MYC-YM90X安路飛龍DR1開發板】HMI人機界面開發

    綜合,生成網表文件,檢查資源占用率(避免超過 DR1 系列的 94,464LEs、240DSP 等上限)。 約束配置:添加時序約束(如時鐘頻率、接口延遲)和物理約束(如引腳分配,需參考開發板原理圖
    發表于 08-14 21:26

    【米爾-安路MYD-YM90X 創意秀】點燈也是入門絕活

    DR1系列,是集成了ARM Cortex-A35@1GHz 的FPGA,或者說SoC FPG
    發表于 08-10 22:10

    全國產!瑞芯微 RK3576 ARM 2.2GHz 工業開發板—LVGL應用開發案例

    本文主要基于評估演示LVGL應用開發案例,適用開發環境如下。創龍科技 TL3576-EVM 是一款基于瑞芯微 RK3576J/RK3576高性能處理器設計的4
    的頭像 發表于 06-23 15:17 ?822次閱讀
    全國產!瑞芯微 RK3576 <b class='flag-5'>ARM</b> 八<b class='flag-5'>核</b> 2.2GHz 工業<b class='flag-5'>開發板</b>—LVGL應用<b class='flag-5'>開發</b>案例

    搭載ARM,NPU,FPGA三種核心的開發板—米爾安路DR1M90飛龍派

    上市,是A股首家專注于FPGA業務的上市公司。 YM90X開發板用的就是安路的SALDRAGON1(飛龍1,以下簡稱 DR1
    發表于 06-13 17:02

    ARM,NPU,FPGA三種核心的開發板 — 米爾安路飛龍派開發板

    ,是A股首家專注于FPGA業務的上市公司。YM90X開發板用的就是安路的SALDRAGON1(飛龍1,以下簡稱DR1系列FPSoC。FPS
    的頭像 發表于 06-13 08:03 ?1717次閱讀
    有<b class='flag-5'>ARM</b>,NPU,FPGA三種核心的<b class='flag-5'>開發板</b> — 米爾安路飛龍派<b class='flag-5'>開發板</b>

    【米爾MYC-YM90X安路飛龍DR1開發板】安路科技 SALDRAGON開發板介紹

    。 5.1、開發套件硬件架構 核心(MYC-YM90X)主控芯片:搭載安路科技DR1M90GEG484 FPGA SoC,集成95K邏輯單元、
    發表于 04-28 17:57

    國產開發板—米爾全志T113-i如何實現ARM+RISC-V+DSP協同計算?

    操作系統 支持少量數據間通訊(RPMsg)和大量間數據(RPBuf) OpenAMP系統原理 T113-i=2×ARM A7 + 1
    發表于 03-21 16:50