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

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

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

3天內不再提示

基于安路DR1M90 FPSoC 的Linux 系統全流程開發指南(2)

Tronlong創龍科技 ? 來源:Tronlong創龍科技 ? 作者:Tronlong創龍科技 ? 2025-11-25 17:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前 言

本文檔由創龍科技研發,專為安路飛龍 DR1M90 FPSoC 產品打造,聚焦 Linux 系統全流程開發需求。

開發環境

Windows開發環境:Windows10 64bit

Linux開發環境:VMware16.2.5、Ubuntu22.04.4 64bit

LinuxSDK開發包:LinuxSDK-[版本號](基于SDK_2025.1)

交叉編譯工具鏈:

應用開發:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

U-Boot、內核開發:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

評估板系統版本:U-Boot-2021.01、Linux-6.1.111、Buildroot-2022.02

備注:本文基于8GByte eMMC、1GByteDDR3配置核心板進行演示。

BOOT.bin開發

BOOT.bin文件為SoC的啟動鏡像,一般包含FSBL、比特流文件(用于配置PL)、被引導的應用、數據文件,遵循固定的結構,以便SoC上電時BootRom對其進行解析。

具體說明如下:

(1)FSBL:非必須,主要功能為初始化SoC、引導應用程序,配置PL比特流。

(2)比特流文件:非必須,在使用到PL端邏輯資源時必須使用。

(3)應用程序:必須,若運行在OCM,且不依賴PL端,則可單獨使用;其他情況下被FSBL引導;引導Linux系統則為u-boot.bin。

(4)數據:可選,一般用于將數據加載至固定內存地址。

wKgZPGkmZTOAYo4qAAD9GtIV2lY556.png圖 17

備注:我司提供的BOOT.bin由FSBL和U-Boot鏡像合并生成,不含比特流文件、數據。

FSBL開發

FSBL(First Stage Bootloader)為一級Bootloader程序,我司提供的FSBL工程中已對PS端相關外設進行配置。

FSBL TD工程說明

我司提供的FSBL TD工程位于“4-軟件資料LinuxFSBLfsbl-[版本號]hwproject”目錄下,請參考《TD-FD工程編譯與加載》文檔導入TD工程。

雙擊fsbl,即可打開的Design界面。

wKgZO2kmcIaAd3hDAABE1Ycszv8054.png圖 18wKgZPGkmcIaAJ6_eAAE_8uTtC90675.png圖 19

在Design界面雙擊"ARM Processor System"IP即可打開配置界面,該界面為FPSoC Diagram,顯示基本配置框圖,點擊橙色部分可跳轉到該功能詳細配置界面。

wKgZPGkmcJSAGcLMAACgZsVdK9g100.png圖 20

可通過打開相應的窗口來查看相關配置。

(1)打開"PS-PL interfaces"窗口查看PS-PL配置。

wKgZO2kmcJ2AQzraAACL83L-_4w071.png圖 21

(2)打開"Peripherals and Pin Mux"窗口查看外設配置。

wKgZO2kmcKSASCJ2AADAscE2GXE155.png圖 22

(3)打開"Clocks"窗口查看時鐘配置。

wKgZO2kmcKyAKNVCAADVDtXiAI4440.png圖 23

(4)打開"PS DDR"窗口查看DDR配置。

wKgZO2kmcMuAMcuBAADLVhcm1UM972.png圖 24

(5)打開"AI"窗口查看NPU配置。

wKgZPGkmeOmAaUqQAABIq-sbZYo391.png圖 25

FSBL TD工程編譯

請參考《TD-FD工程編譯與加載》文檔編譯FSBL TD工程。

wKgZPGkmePKAFEdsAAFLN6y30Mo119.png圖 26

生成HPF文件

在FPSoC的應用開發過程中,需將硬件設計信息通過文件的形式傳遞至軟件開發工具(FD)中使用,該文件被稱之為HPF(HardwarePlatform File)文件。

我司提供的HPF文件位于“4-軟件資料LinuxFSBLfsbl-[版本號]hwbin”目錄下,下文演示HPF文件的生成。

在菜單欄中依次點擊"Project -> Export Hardware Platform File"。

wKgZO2kmePqAC7NbAABp321juJg026.png圖 27

在彈窗內,勾選"Include bitstream",導出路徑選擇默認在當前工程內,點擊OK。

wKgZPGkmeRSAQ36vAAAa3xYlbFY797.png圖 28

彈窗顯示導出HPF文件成功,并顯示HPF文件的存放路徑,點擊"Ok"。

wKgZPGkmeRuAcPogAAAUFp_IC1Y080.png圖 29

生成FSBL FD工程

我司提供的FSBL FD工程位于“4-軟件資料LinuxFSBLfsbl-[版本號]swbaremetal_demoproject”目錄下,下文演示FSBL FD工程的生成。打開FD軟件,在Workspace中指定工程存放路徑,點擊"Launch"。Workspace是FD的工作目錄,該目錄下包含了Platform工程、app工程以及用戶配置文件。

wKgZO2kmeSGAaSQ3AAAlejPbydY448.png圖 30

在菜單欄中依次點擊"File -> New -> Platform Project",創建Platform工程。

wKgZO2kmeSqAKYdgAAEhpfe672c789.png圖 31

在彈出的對話框中,根據實際情況設置Project Name(工程名),"HPF File"選擇剛剛導出的HPF文件所在路徑,點擊"Finish"生成Platform工程。

wKgZO2kmeTWAOLjEAAA-dMuMfO4378.png圖 32

至此,創建Platform工程完成。

wKgZO2kmeTyANcIzAABK1QLx0eQ677.png圖 33

在菜單欄中依次點擊"File -> New -> Application Project",創建FSBLFD工程。

wKgZPGkmeUiAV5byAAFJxgBMUDk619.png圖 34

在彈出的對話框中,根據實際情況設置Project Name(工程名),"Template List"選擇"FSBL",點擊"Finish"生成FSBLFD工程。FSBL FD工程即為app工程,其主要功能為引導BOOT.bin中的數據和程序。

wKgZO2kmeVGAN5jaAABqH9ReMYA478.png圖 35

至此,已生成FSBL FD工程。

wKgZPGkmeVmAHsmiAABROfXjacU651.png圖 36

編譯FSBL FD工程生成elf文件

我司提供的elf文件位于“4-軟件資料LinuxFSBLfsbl-[版本號]swbaremetal_demobin”目錄下,可直接使用。

本小節演示elf文件的生成。鼠標右鍵FSBL工程,選擇"Reset Project"。

wKgZO2kmeWOAfFXYAADFYdIQ0xA507.png圖 37

點擊"Reset"。

wKgZPGkmeW6ADHhEAAAhSInph1E067.png圖 38

點擊"Close"。

wKgZPGkmeXWATD5XAAAMQFNcxm0334.png圖 39

在菜單欄中依次點擊"Project -> Build All",編譯FSBL FD工程。

wKgZO2kmeX2ABGNlAAEJyc2LNSI107.png圖 40

編譯完成,并在fsblgon工程的build目錄下生成fsbl.elf文件。fsbl.elf需與u-boot.bin文件合成BOOT.bin使用。

wKgZPGkmeYSARyQWAAAwDEqbg6k453.png圖 41

wKgZO2kmeYuABebwAAAdJ76GgdQ789.png圖 42

U-Boot開發

U-Boot為二級Bootloader程序。

U-Boot源碼說明

U-Boot源碼位于LinuxSDK源碼u-boot目錄,具體說明如下表。

wKgZO2kmeZmAc8IKAAAkM1ooGhY926.png

wKgZPGkmeZmANqU3AACIwqSDgFM182.png圖 43

U-Boot配置

U-Boot可使用menuconfig進行配置,請參考“配置內核選項”章節,配置menuconfconfig所需依賴環境。

在LinuxSDK源碼目錄下,執行如下命令,通過menuconfig配置U-Boot。

Host#cd /home/tronlong/DR1/SDK_2025.1/

Host#./build.sh ubootmenuconfig

wKgZO2kmebGAPdIrAADz_FcvCgM497.png圖 44

wKgZPGkmebmASC2GAAE2v9Jftgk726.png圖 45

可通過鍵盤的方向鍵選中對應菜單欄。在被選中的情況下,可按Enter鍵進入子菜單。菜單選項中藍色高亮的字母代表此菜單選項的快捷鍵,可在鍵盤上按下對應的字母快速選中對應的菜單選項。每個菜單選項前的括號內容表示當前菜單選項的配置狀態。選中對應的菜單選項后,按下Y鍵,會將相應的選項配置編譯到U-Boot中,同時菜單選項前面變為< * >。按下N鍵,不會將相應的選項配置編譯到U-Boot中。如需搜索,可按下/鍵打開搜索框,然后輸入要搜索的內容。配置完畢后,選中,按Enter鍵保存配置選項。然后選中,按Enter鍵退出。圖 46編譯U-Boot在LinuxSDK源碼目錄下執行如下命令,配置編譯選項,并單獨編譯U-Boot。Host# ./build.sh uboot圖 47圖 48編譯完成后,最終在LinuxSDK源碼"device/output/anlogic_dr1m90/u-boot"目錄下生成U-Boot鏡像如下所示。圖 49合成BOOT.bin文件BOOT.bin由fsbl.elf和u-boot.bin合成。fsbl.elf文件位于產品資料“4-軟件資料LinuxFSBLfsbl-[版本號]swbaremetal_demobin”目錄下,u-boot.bin文件位于“4-軟件資料LinuxU-Bootimageu-boot-2021.01-[版本號]-[Git序列號]”目錄下,可直接使用。備注:版本號、Git序列號請以實際情況為準。打開FSBL FD工程,在菜單欄中依次點擊"Tools -> Create Boot lmage"。圖 50圖 51"Output BlF file path"為output.bif存放路徑,"Output path"為BOOT.bin存放路徑,請根據實際路徑進行選擇。在"Boot image partitions"中點擊"Add"選擇和配置需要被打包到Boot.bin的分區文件,本次以添加FSBL鏡像fsbl.elf和U-Boot鏡像u-boot.bin為例進行演示,配置參數如下圖。圖 52圖 53圖 54配置完成,點擊"Create lmage",生成BOOT.bin文件。圖 55圖 56替換BOOT.bin文件通過Linux系統啟動卡替換將Linux系統啟動卡通過讀卡器連接至PC機,直接替換Linux系統啟動卡BOOT分區的BOOT.bin原文件即可。圖 57通過命令行替換請將需替換的BOOT.bin文件拷貝至評估板文件系統的任意目錄下,執行如下命令替換BOOT.bin文件至Linux系統啟動卡。Target# cp ./BOOT.bin /mnt/mmcblk0p1/BOOT.bin備注:如需替換BOOT.bin至eMMC,請將設備節點修改為"/mnt/mmcblk1p1"。圖 58U-Boot使用說明U-Boot命令行進入方式評估板上電啟動后,在U-Boot倒計時結束之前按下"Ctrl + C"進入U-Boot命令行模式。環境變量說明(1)環境變量存儲執行命令"setenv"或"env default -f -a"修改的是運行空間中的環境變量值,須使用"saveenv"命令將修改后的環境變量保存起來。否則U-Boot重啟后,將會使用修改前的環境變量值。環境變量修改完成后,執行reset命令,即可使用修改后的U-Boot環境變量啟動。U-Boot# env default -f -aU-Boot# saveenvU-Boot# reset圖 59(2)默認配置信息在U-Boot命令行執行"printenv"命令可查看環境變量。不同版本的U-Boot,環境變量可能會有所不同,內容僅供參考。U-Boot# printenv圖 60圖 61(3)環境變量說明關鍵環境變量說明如下。/* 架構、CPU和板卡信息*/arch=armcpu=armv8soc=dr1m90board=evb_dr1m90board_name=evb_dr1m90vendor=anlogic/* 串口控制臺和波特率設置*/baudrate=115200stderr=serial@f8401000stdin=serial@f8401000stdout=serial@f8401000/* 網絡配置*/ipaddr=192.168.199.138netmask=255.255.255.0serverip=192.168.199.114/* 內核和設備樹加載地址*/fdt_addr_r=0x18000000kernel_addr_r=0x10000000/* 內核和設備樹文件名*/kernel_image=kernel.bindevicetree_image=dtb.bin/* 內核鏡像和設備樹文件路徑*/bootdir=/boot/* 支持的啟動設備類型*/boot_targets=mmc0 mmc1 ubifs0 nand qspi/* 當前啟動類型*/boot_type=mmc0/* 主要啟動命令*/bootcmd=run an_bootcmd/* 自動啟動命令邏輯*/an_bootcmd=if env exists boot_type; then for target in ${boot_targets}; do if test ${boot_type} = ${target}; then run bootcmd_${target}; fi; done; fi;/* 各啟動設備的命令*/bootcmd_mmc0=devnum=0; run mmc_bootbootcmd_mmc1=devnum=1; run mmc_boot/* MMC設備啟動流程*/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';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';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; fiKernel參數傳遞Kernel參數傳遞指的是在啟動內核時,通過特定機制將配置參數或啟動選項傳遞給內核,以控制其初始化行為、硬件配置、運行模式等。評估板默認參數如下。bootargs 'console=ttyS1,115200n8 earlycon=uart,mmio32,0xf8401000 loglevel=8 root=/dev/mmcblk0p2rw rootfstype=ext4 rootwait'參數解析:

審核編輯 黃宇

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

    關注

    38

    文章

    4525

    瀏覽量

    227814
  • Linux
    +關注

    關注

    88

    文章

    11641

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于 DR1M90Linux-RT 內核開發:從編譯配置到 GPIO / 按鍵應用實現(1

    ,及 rt_gpio_ctrl、rt_input 應用案例。含實操命令與測試方法,適配指定硬件,幫助開發者完成 Linux-RT 系統開發與優化,滿足 DR1M90 產品實時性應用需求
    的頭像 發表于 12-02 10:38 ?689次閱讀
    基于 <b class='flag-5'>DR1M90</b> 的 <b class='flag-5'>Linux</b>-RT 內核<b class='flag-5'>開發</b>:從編譯配置到 GPIO / 按鍵應用實現(<b class='flag-5'>1</b>)

    基于DR1M90 FPSoCLinux系統流程開發指南(4)

    本手冊由創龍科技研發,針對路飛龍 DR1M90,詳述 Linux 系統開發流程:LinuxSDK 配置編譯、BOOT.bin(FSBL+U
    的頭像 發表于 11-30 15:46 ?2047次閱讀
    基于<b class='flag-5'>安</b><b class='flag-5'>路</b><b class='flag-5'>DR1M90</b> <b class='flag-5'>FPSoC</b>的<b class='flag-5'>Linux</b><b class='flag-5'>系統</b><b class='flag-5'>全</b><b class='flag-5'>流程</b><b class='flag-5'>開發指南</b>(4)

    基于DR1M90 FPSoCLinux 系統流程開發指南(3)

    本手冊由創龍科技研發,針對路飛龍 DR1M90,詳述 Linux 系統開發流程:LinuxSDK 配置編譯、BOOT.bin(FSBL+U
    的頭像 發表于 11-26 17:01 ?171次閱讀
    基于<b class='flag-5'>安</b><b class='flag-5'>路</b><b class='flag-5'>DR1M90</b> <b class='flag-5'>FPSoC</b> 的<b class='flag-5'>Linux</b> <b class='flag-5'>系統</b><b class='flag-5'>全</b><b class='flag-5'>流程</b><b class='flag-5'>開發指南</b>(3)

    基于DR1M90 FPSoCLinux 系統流程開發指南1

    本手冊由創龍科技研發,針對路飛龍 DR1M90,詳述 Linux 系統開發流程:LinuxSDK 配置編譯、BOOT.bin(FSBL+U
    的頭像 發表于 11-25 14:09 ?247次閱讀
    基于<b class='flag-5'>安</b><b class='flag-5'>路</b><b class='flag-5'>DR1M90</b> <b class='flag-5'>FPSoC</b> 的<b class='flag-5'>Linux</b> <b class='flag-5'>系統</b><b class='flag-5'>全</b><b class='flag-5'>流程</b><b class='flag-5'>開發指南</b>(<b class='flag-5'>1</b>)

    一步步完成安路飛龍 DR1M90 Linux 系統固化:啟動卡制作 + eMMC 固化

    本手冊由創龍科技研發,針對路飛龍 DR1M90,詳述 Linux 系統啟動卡制作(含工具包使用、PV 工具安裝等)與 eMMC 固化步驟,說明啟動卡和 eMMC 分區結構,提供 eM
    的頭像 發表于 11-21 10:48 ?5490次閱讀
    一步步完成安路飛龍 <b class='flag-5'>DR1M90</b> <b class='flag-5'>Linux</b> <b class='flag-5'>系統</b>固化:啟動卡制作 + eMMC 固化

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

    本手冊由創龍科技研發,針對路飛龍 DR1M90 評估板,詳述 Linux 系統下功能測試流程。含系統
    的頭像 發表于 11-20 15:26 ?913次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>路</b><b class='flag-5'>DR1M90</b>評估板:從基礎外設到通信模塊測試<b class='flag-5'>指南</b>

    創龍科技DR1M90工業評估板的關鍵優勢

    科技生態合作伙伴創龍科技正式推出了基于科技產品DR1M90工業核心板,共同助力國產FPGA技術的推廣和創新應用。
    的頭像 發表于 08-18 16:20 ?1097次閱讀

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

    非常感謝米爾電子舉辦的這次米爾-路飛龍派創意秀活動,我將分享我的國產FPGA開發心得,也就是本文得主角:米爾-
    發表于 08-10 22:10

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

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

    基于米爾路飛龍派FPGA FPSoC+開發環境搭建以及鏡像燒錄

    的工作目錄中。 2、鏡像編譯和燒錄 完成工具鏈的安裝后,參考《MYD-YM90X Linux 軟件開發指南.pdf》中的第四章《構建Linux
    發表于 05-30 22:46

    強強聯手!米爾×IDH合作共筑FPGA新生態

    X核心板及開發板?已正式發布,基于路飛龍DR1M90芯片,支持MIPI、LVDS等高速接口及硬件級NPU加速,可滿足工業視覺、智能電網等場景的實時控制需求?。米爾同步推出配套開發板及
    發表于 04-27 16:43

    科技DR1FPSoC多路以太網擴展方案

    隨著物聯網、工業4.0及汽車電子等領域的快速發展,對嵌入式系統的網絡通信能力提出了更高要求。科技,作為國內領先的FPGA及FPSoC解決方案提供商,現推出基于
    的頭像 發表于 04-03 09:10 ?856次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>路</b>科技<b class='flag-5'>DR1FPSoC</b>多路以太網擴展方案

    雙目視覺處理系統開發實例-基于米爾國產DR1M90開發

    ,底板,子卡和線纜搭建硬件系統(使用米爾基于路飛龍DR1M90開發板) 顯示測試 實測雙目顯示清晰,無卡幀,閃屏。圖四 輸出顯示效果 系統
    發表于 02-21 14:20

    米爾-路飛龍DR1M90 -國產FPGA核心板開發

    MYC-YM90X核心板及開發路飛龍DR1M90 ,國產FPGA芯選擇最新一代FPSOC工業級64位MPU,
    發表于 01-15 14:57 ?3次下載

    米爾國產FPGA SoC芯選擇,路飛龍DR1M90核心板重磅發布

    工業級FPGA FPSoC——發布MYC-YM90X SOM模組及評估套件。該產品采用路飛龍DR1M90,95K LEs 可編程邏輯,片上集成 64位
    發表于 01-10 14:32