在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

米爾基于MYD-YG2LX系統(tǒng)啟動(dòng)時(shí)間優(yōu)化應(yīng)用筆記

米爾電子 ? 2025-05-08 08:07 ? 次閱讀

1.概述

MYD-YG2LX采用瑞薩RZ/G2L作為核心處理器,該處理器搭載雙核Cortex-A55@1.2GHz+Cortex-M33@200MHz處理器,其內(nèi)部集成高性能3D加速引擎Mail-G31 GPU(500MHz)和視頻處理單元(支持H.264硬件編解碼),16位的DDR4-1600 / DDR3L-1333內(nèi)存控制器、千兆以太網(wǎng)控制器、USBCANSD卡、MIPI-CSI等外設(shè)接口,在工業(yè)、醫(yī)療、電力等行業(yè)都得到廣泛的應(yīng)用。

78f6708a-2ba0-11f0-9434-92fbcf53809c.png米爾基于瑞薩RZ/G2L開發(fā)板本文主要介紹基于MYD-YG2LX開發(fā)板進(jìn)行系統(tǒng)啟動(dòng)時(shí)間優(yōu)化的調(diào)試案例,一般啟動(dòng)方式有去掉常規(guī)uboot,直接使用SPL加載內(nèi)核和保留常規(guī)uboot加載內(nèi)核的方式,MYD-YG2LX目前使用的是保留常規(guī)uboot的方法啟動(dòng),啟動(dòng)時(shí)間20s+,接下來介紹的主要包括TFA、Uboot、Kernel和文件系統(tǒng)時(shí)間優(yōu)化。

2.硬件資源

USB-TTL調(diào)試串口線一根

MYD-YG2LX開發(fā)板一塊

12V電源適配器一個(gè)

3.軟件資源

Linux虛擬機(jī)

米爾提供的SDK交叉工具鏈

Linux5.10.83

4.環(huán)境準(zhǔn)備

進(jìn)行調(diào)試之前,需要安裝好Linux虛擬機(jī)等相關(guān)開發(fā)環(huán)境,具體可以參考MYD-YG2LX_Linux軟件開發(fā)指南的2.0章節(jié)。

5.啟動(dòng)時(shí)間優(yōu)化

5.1.1. TFA優(yōu)化

TFA引導(dǎo)啟動(dòng)的log主要有以下,如果我們認(rèn)為不是太美觀,可以到TFA源碼中使用grep命令去搜索關(guān)鍵的信息打印,然后把相關(guān)的打印去掉,這可能需要花點(diǎn)功夫去尋找。

791ed656-2ba0-11f0-9434-92fbcf53809c.png

例如(grep -rn “BL2:”)搜索到關(guān)鍵的文件(以下圖示只是其中的一個(gè)地方),然后屏蔽即可。

792eed7a-2ba0-11f0-9434-92fbcf53809c.png

另外,需要檢查源碼下面的這個(gè)寄存器有沒有設(shè)置,有則忽略,沒有則需要打開,這樣會(huì)減少系統(tǒng)在啟動(dòng)中的時(shí)間。

794056a0-2ba0-11f0-9434-92fbcf53809c.png

static void cpu_cpg_setup(void){while ((mmio_read_32(CPG_CLKSTATUS) & CLKSTATUS_DIVPL1_STS) != 0x00000000);mmio_write_32(CPG_PL1_DDIV, PL1_DDIV_DIVPL1_SET_WEN | PL1_DDIV_DIVPL1_SET_1_1);while ((mmio_read_32(CPG_CLKSTATUS) & CLKSTATUS_DIVPL1_STS) != 0x00000000);}void cpg_early_setup(void){ cpu_cpg_setup();cpg_ctrl_clkrst(&early_setup_tbl[0], ARRAY_SIZE(early_setup_tbl));}

最后編譯TFA以及更新即可。

5.1.2. Uboot優(yōu)化

正常的啟動(dòng)log如下,我們需要對(duì)這部分進(jìn)行優(yōu)化,優(yōu)化可以從下面3個(gè)點(diǎn)出發(fā)。

79531a92-2ba0-11f0-9434-92fbcf53809c.png

  • 裁剪uboot,減少uboot大小。

MYD-YG2LX平臺(tái)的2G DDR配置文件在configs/myc-rzg2l_defconfig,1G DDR的配置文件在configs/myc-rzg2l_ddr1gb_defconfig,可以在這個(gè)配置文件中屏蔽掉一些自己不需要的功能,這個(gè)需要根據(jù)實(shí)際情況刪除不需要的功能,例如:

79b5cb38-2ba0-11f0-9434-92fbcf53809c.png

  • 移除bootdelay的倒計(jì)時(shí)時(shí)間

bootdelay一般默認(rèn)都是2-3s,移除可以直接修改include/configs/myc-rzg2l.h文件,例如:

79c09e0a-2ba0-11f0-9434-92fbcf53809c.png

  • 關(guān)閉uboot的打印log

關(guān)閉uboot相關(guān)的日志打印,可以到uboot的源碼路徑下搜索關(guān)鍵的信息,然后進(jìn)行屏蔽即可(以下圖示只是其中的一個(gè)地方),例如:

79ceeb54-2ba0-11f0-9434-92fbcf53809c.png

最后編譯與更新uboot即可。

5.1.3. Kernel優(yōu)化

Kernel典型的修改主要有以下:

簡單:通過在 cmdline 中添加 quiet 來減少控制臺(tái)消息

適度:通過移除驅(qū)動(dòng)程序、文件系統(tǒng)、子系統(tǒng)來精簡內(nèi)核,從減少內(nèi)核解壓或加載的時(shí)間

適度:通過移除未使用的硬件接口精簡設(shè)備樹

棘手:開始優(yōu)化行為不良的驅(qū)動(dòng)程序,這是一個(gè)相對(duì)復(fù)雜和困難的任務(wù)。優(yōu)化驅(qū)動(dòng)程序可以提高其性能、穩(wěn)定性和兼容性,從而改善系統(tǒng)的整體表現(xiàn)。然而,如果驅(qū)動(dòng)程序的行為不良,例如出現(xiàn)崩潰、卡頓或沖突等問題,那么進(jìn)行優(yōu)化就會(huì)變得更加棘手和挑戰(zhàn)。這需要深入分析和修復(fù)驅(qū)動(dòng)程序的問題,調(diào)整其代碼和算法,以使其更加高效和可靠。

使用Bootgraph分析內(nèi)核啟動(dòng)的調(diào)用時(shí)間,移除花費(fèi)時(shí)間長的驅(qū)動(dòng)和優(yōu)化需要使用的驅(qū)動(dòng)

總之優(yōu)化還算是一項(xiàng)蠻復(fù)雜的項(xiàng)目,我們此次主要從以下幾點(diǎn)優(yōu)化:

去掉kernel的打印等級(jí),需要到內(nèi)核源碼下屏蔽掉log屬性和到uboot源碼下把log等級(jí)升高,內(nèi)核修改如下:

79e0103c-2ba0-11f0-9434-92fbcf53809c.png

79f329ce-2ba0-11f0-9434-92fbcf53809c.png

Uboot修改如下:

7a0221f4-2ba0-11f0-9434-92fbcf53809c.png

關(guān)掉kernel不需要的一些外設(shè)資源,縮小內(nèi)核大小(需要根據(jù)自己的情況來進(jìn)行修改)

可以到設(shè)備樹中屏蔽掉一些不需要的接口和到內(nèi)核配置文件中屏蔽掉一些不需要的驅(qū)動(dòng)配置,例如:

7a0f2dc2-2ba0-11f0-9434-92fbcf53809c.png

使用Bootgraph分析內(nèi)核啟動(dòng)的調(diào)用時(shí)間,移除花費(fèi)時(shí)間長的驅(qū)動(dòng)和優(yōu)化需要使用的驅(qū)動(dòng)。

首先需要在uboot加上時(shí)間戳和init debug調(diào)用:

setenv bootargs 'rw rootwait earlycon root=/dev/mmcblk0p2 printk.time=1 initcall_debug=1'

然后啟動(dòng)內(nèi)核,采集啟動(dòng)log,如下:

dmesg > boot-kernel.log

返回內(nèi)核源碼目錄,進(jìn)入內(nèi)核源碼scripts目錄,只需下面命令,生成直觀圖形,如下:

./bootgraph.pl boot-kernel.log > boot-kernel.svg

然后打開boot.svg查看花費(fèi)時(shí)間最大的驅(qū)動(dòng)調(diào)用,沒用的就關(guān)閉,需要用的就優(yōu)化。

7a206b3c-2ba0-11f0-9434-92fbcf53809c.png

最后編譯以及更新內(nèi)核即可。

5.1.4. 文件系統(tǒng)優(yōu)化

MYD-YG2LX的文件系統(tǒng)是基于yocto構(gòu)建的,關(guān)于yocto如何構(gòu)建可以參考MYD-YG2LX_Linux軟件開發(fā)指南的3.0章節(jié)。

文件系統(tǒng)主要使用下面這3個(gè)命令就可以找到花費(fèi)時(shí)間最多的服務(wù),然后可以根據(jù)實(shí)際情況優(yōu)化。當(dāng)然也可以把所有的服務(wù)以圖形的形式表現(xiàn)出來,這樣更加直觀,采用systemd-analyze plot > boot.svg 可以把每個(gè)服務(wù)啟動(dòng)順序和消耗時(shí)間顯示出來,針對(duì)這些服務(wù),移除掉不需要的或者調(diào)整服務(wù)之間的啟動(dòng)順序。

systemctl list-unit-files --state=enabled #查看所有開機(jī)自啟的服務(wù)systemd-analyze blame #查看服務(wù)的初始化時(shí)間systemd-analyze critical-chain #查看啟動(dòng)花費(fèi)時(shí)間最多的

7a349242-2ba0-11f0-9434-92fbcf53809c.png

5.1.5. 啟動(dòng)測試

經(jīng)過以上的優(yōu)化后可以打包一個(gè)sd卡刷機(jī)包并刷到板子的emmc,關(guān)于如何打包可以參考MYD-YG2LX_Linux軟件開發(fā)指南的4.3章節(jié),最后再啟動(dòng)測試,執(zhí)行systemd-analyze即可看到啟動(dòng)時(shí)間,效果如下:

7a498c7e-2ba0-11f0-9434-92fbcf53809c.png

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

    關(guān)注

    68

    文章

    19833

    瀏覽量

    233981
  • 板卡
    +關(guān)注

    關(guān)注

    3

    文章

    133

    瀏覽量

    17144
  • 米爾電子
    +關(guān)注

    關(guān)注

    0

    文章

    143

    瀏覽量

    743
收藏 人收藏

    評(píng)論

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

    嵌入式Linux啟動(dòng)時(shí)間優(yōu)化的秘密之四-啟動(dòng)腳本

    本文主要講述嵌入式Linux啟動(dòng)時(shí)間優(yōu)化的秘密,我們繼續(xù)上篇沒有講完的嵌入式Linux啟動(dòng)時(shí)間優(yōu)化方法,本文主要會(huì)講啟動(dòng)腳本。想看上一篇的請(qǐng)
    發(fā)表于 04-21 09:22 ?2676次閱讀
    嵌入式Linux<b class='flag-5'>啟動(dòng)時(shí)間</b><b class='flag-5'>優(yōu)化</b>的秘密之四-<b class='flag-5'>啟動(dòng)</b>腳本

    米爾MYD-YG2LX開發(fā)板內(nèi)存、CPU等壓力測試

    MYD-YG2LX開發(fā)板進(jìn)行基礎(chǔ)信息查看,以及CPU、內(nèi)存壓力測試
    的頭像 發(fā)表于 05-16 13:34 ?1808次閱讀
    <b class='flag-5'>米爾</b><b class='flag-5'>MYD-YG2LX</b>開發(fā)板內(nèi)存、CPU等壓力測試

    系統(tǒng)啟動(dòng)時(shí)間優(yōu)化方案--基于米爾MYD-YG2LX開發(fā)板

    設(shè)接口,在工業(yè)、醫(yī)療、電力等行業(yè)都得到廣泛的應(yīng)用。 米爾基于瑞薩RZ/G2L開發(fā)板本文主要介紹基于MYD-YG2LX開發(fā)板進(jìn)行系統(tǒng)啟動(dòng)時(shí)間優(yōu)化
    發(fā)表于 05-09 18:03

    《電子發(fā)燒友電子設(shè)計(jì)周報(bào)》聚焦硬科技領(lǐng)域核心價(jià)值 第10期:2025.05.6--2025.05.9

    之電機(jī)FOC控制+FOC入門教程 3、電子工程師必看--EMC設(shè)計(jì)難題一站式破解 4、448 Gbps多級(jí)脈沖幅度調(diào)制測試方案 5、米爾基于MYD-YG2LX系統(tǒng)啟動(dòng)時(shí)間優(yōu)化應(yīng)
    發(fā)表于 05-09 19:26

    MYD-Y6ULX申請(qǐng)】米爾MYD-Y6ULX智能酒駕識(shí)別系統(tǒng)

    )④米爾MYD-Y6ULX智能酒駕識(shí)別系統(tǒng)項(xiàng)目開展,按時(shí)間計(jì)劃實(shí)施。⑤米爾MYD-Y6ULX智能
    發(fā)表于 01-02 16:56

    Linux系統(tǒng)啟動(dòng)時(shí)間優(yōu)化方案

    首先是對(duì)Linux啟動(dòng)過程的跟蹤和分析,生成詳細(xì)的啟動(dòng)時(shí)間報(bào)告,較為簡單可行的方式是通過PrintkTime功能為啟動(dòng)過程的所有內(nèi)核信息增加時(shí)間戳,便于匯總分析
    發(fā)表于 05-13 10:56 ?3023次閱讀

    Linux系統(tǒng)啟動(dòng)時(shí)間優(yōu)化方案

    (1)首先是對(duì)Linux啟動(dòng)過程的跟蹤和分析,生成詳細(xì)的啟動(dòng)時(shí)間報(bào)告。 較為簡單可行的方式是通過PrintkTime功能為啟動(dòng)過程的所有內(nèi)核信息增加時(shí)間戳,便于匯總分析。PrintkT
    發(fā)表于 12-01 12:54 ?534次閱讀

    Linux系統(tǒng)啟動(dòng)時(shí)間的極限優(yōu)化

    (1)首先是對(duì)Linux啟動(dòng)過程的跟蹤和分析,生成詳細(xì)的啟動(dòng)時(shí)間報(bào)告。?  較為簡單可行的方式是通過PrintkTime功能為啟動(dòng)過程的所有內(nèi)核信息增加時(shí)間戳,便于匯總
    發(fā)表于 04-02 14:38 ?671次閱讀

    嵌入式linux之系統(tǒng)啟動(dòng)時(shí)間測試方法

    嵌入式linux之系統(tǒng)啟動(dòng)時(shí)間測試方法轉(zhuǎn)載2016-08-17 10:41:43方法一:gpio(最準(zhǔn)確的,未使用)1.找到一個(gè)空閑的gpio,在適當(dāng)?shù)牡胤綄?duì)gpio進(jìn)行翻轉(zhuǎn) 效果,如下
    發(fā)表于 11-02 09:21 ?10次下載
    嵌入式linux之<b class='flag-5'>系統(tǒng)啟動(dòng)時(shí)間</b>測試方法

    優(yōu)化嵌入式Linux的啟動(dòng)時(shí)間之文件系統(tǒng)

    為一個(gè)挑戰(zhàn),對(duì)于大多數(shù)應(yīng)用開發(fā)人員而言,由于Linux系統(tǒng)的復(fù)雜性,對(duì)于如何提高啟動(dòng)速度,往往無從下手。那么讀完優(yōu)化嵌入式Linux的啟動(dòng)時(shí)間系列文章,將獲得清晰完整的解決思路。本文將
    發(fā)表于 11-02 14:36 ?9次下載
    <b class='flag-5'>優(yōu)化</b>嵌入式Linux的<b class='flag-5'>啟動(dòng)時(shí)間</b>之文件<b class='flag-5'>系統(tǒng)</b>

    NCV7691 應(yīng)用筆記開路負(fù)載檢測與啟動(dòng)時(shí)間

    NCV7691 應(yīng)用筆記開路負(fù)載檢測與啟動(dòng)時(shí)間
    發(fā)表于 11-14 21:08 ?0次下載
    NCV7691 應(yīng)<b class='flag-5'>用筆記</b>開路負(fù)載檢測與<b class='flag-5'>啟動(dòng)時(shí)間</b>

    米爾MYD-YG2開發(fā)板觸摸屏測試

    米爾MYD-YG2開發(fā)板測試米爾觸摸屏
    的頭像 發(fā)表于 05-24 13:12 ?29.5w次閱讀

    瑞薩RZ/G2L開發(fā)板在工控領(lǐng)域的應(yīng)用-基于SOEM的EtherCAT主站

    本篇測評(píng)由優(yōu)秀測評(píng)者“qinyunti”提供。前言本文介紹【米爾MYD-YG2LX開發(fā)板】在工控領(lǐng)域的應(yīng)用,實(shí)現(xiàn)基于SOEM的EtherCAT主站。開發(fā)環(huán)境基于WSL2。下載代碼gitclone
    的頭像 發(fā)表于 07-31 22:09 ?867次閱讀
    瑞薩RZ/G<b class='flag-5'>2</b>L開發(fā)板在工控領(lǐng)域的應(yīng)用-基于SOEM的EtherCAT主站

    在多媒體應(yīng)用場景下ffmpeg網(wǎng)絡(luò)視頻播放器的體驗(yàn)--基于米爾MYD-YG2LX開發(fā)板

    MYD-YG2LX開發(fā)板快捷高效的多媒體應(yīng)用開發(fā)。過程https://www.sample-videos.com/index.php#sample-mp4-video下下測試mp
    的頭像 發(fā)表于 08-14 09:43 ?1005次閱讀
    在多媒體應(yīng)用場景下ffmpeg網(wǎng)絡(luò)視頻播放器的體驗(yàn)--基于<b class='flag-5'>米爾</b><b class='flag-5'>MYD-YG2LX</b>開發(fā)板

    米爾基于瑞薩RZ/G2L開發(fā)板在工控領(lǐng)域的應(yīng)用-基于SOEM的EtherCAT主站

    本文介紹【米爾MYD-YG2LX開發(fā)板】在工控領(lǐng)域的應(yīng)用,實(shí)現(xiàn)基于SOEM的EtherCAT主站。開發(fā)環(huán)境基于WSL2
    的頭像 發(fā)表于 08-24 18:57 ?1053次閱讀
    <b class='flag-5'>米爾</b>基于瑞薩RZ/G<b class='flag-5'>2</b>L開發(fā)板在工控領(lǐng)域的應(yīng)用-基于SOEM的EtherCAT主站
    主站蜘蛛池模板: 国产一区二区三区在线影院 | 在线视频久久 | 奇米欧美成人综合影院 | 性视频久久 | h视频在线观看视频观看 | 99久久久精品免费观看国产 | 黄色录像欧美 | 亚洲福利视频一区 | 搜索黄色毛片 | 五月天丁香婷婷开心激情五月 | 在线观看黄色网 | 不卡视频一区二区 | 屁股趴过来欠打高h | 天堂在线国产 | 狠狠色丁香久久婷婷综合丁香 | 亚洲在线a | 亚洲国产一区二区三区在线观看 | 美女黄18以下禁止观看的网站 | 恨恨操| 四虎影院永久在线观看 | 午夜免费小视频 | 激情丁香婷婷 | 一区卡二区卡三区卡视频 | 欧美xxxxx喷潮 | 日韩中文字幕第一页 | 午夜免费视频福利集合100 | 午夜啪视频 | 久久国产精品久久久久久久久久 | 四虎影午夜成年免费精品 | 国产午夜精品福利久久 | 亚洲综合丁香 | 免费能看的黄色网址 | 美女黄页在线观看 | 妇少香港三日本三级视频 | 国产主播一区二区 | 日本精高清区一 | 午夜免费啪视频观看网站 | 美女屁屁免费视频网站 | 在线观看免费精品国产 | 欧美xxxx日本 | 婷婷春色|