色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

HPM6750 LVGL刷屏性能再提升?大神網友開辟片內新天地

先楫半導體HPMicro ? 2022-07-22 11:19 ? 次閱讀

先楫體驗官“RSCN”評測了HPM6750的coremark跑分后(原文請至EEWORLD搜索RSCN)又出干貨!這次“RSCN”將為我們演示如何優化自己手中的HPM6750使它性能提升。

以下正文轉自EEWORLD @RSCN

之前的coremark跑分測評中,在flash和ram運行的性能大致一樣,主要的原因還是代碼空間小于32K,這剛好是cache的空間范圍內,HPM6750有32K ICACHE和32K DCACHE,性能上是最高的,所以跑分上,兩者并沒有太大的差距。

但是,如果代碼空間超過了32K,這時候cache總會有用滿的時候,也會有不命中的情況下,這時候需要考慮的正是系統資源和編譯整合利用。

下面以littlevgl的benchmark跑分例子要進行性能提升的一個驗證方法,當然這僅僅作為參考,并不能決定大多數應用場景。

由于上個貼子說明了SPI的一點缺陷,會導致DMA的輔助功能提升并不大,在實際跑lvgl的時候,code放在flash,編譯器使用segger,代碼缺省優化,也其實沒優化的情況下,生成的代碼如下:

b51c1710-039c-11ed-9ade-dac502259ad0.png

那么按照這樣燒錄進去,weightied fps大概是120多左右

b5582e8a-039c-11ed-9ade-dac502259ad0.png

這是有點低了,先從lvgl的配置上去優化,lvgl的刷新周期,從30fps最大刷新率改為100fps刷新率,提升上也并不是很大,大概在160左右變動。

b585787c-039c-11ed-9ade-dac502259ad0.pngb59f55f8-039c-11ed-9ade-dac502259ad0.png

那么開O3優化的效果又是如何,再次燒錄進去,weightied fps大概是174多左右

b5bd9676-039c-11ed-9ade-dac502259ad0.png

當然也試了以下方法,實驗過程也忘了拍照,但是其實效果性能并沒有提升多少,也就180左右變動

1、改為全尺寸雙緩沖,但是其實這種對MCU屏幕有用,對于SPI屏幕上,效果并沒多少。

2、改為非全尺寸雙緩沖,大概五分之一局部刷新。

3、改為單緩沖局部刷新和單緩沖全尺寸刷新,效果均不大。

于是試著找了官方的技術,放假期間的,技術也在中午跟著我遠程調試了下,換為GCC編譯器,以及開啟了相關優化,優化提升也不明顯,大概也是180fps變動。

在調試的過程中,有個idea讓樓主茅塞頓開,也就是官方技術建議把中斷isr放在ram運行,但實際提升也不大。

于是樓主照著這個思路來看下性能有沒有增加,也就是把核心的代碼加載到ram中運行。好在HPM6750有足夠的RAM來加載,根據手冊可知道,兩核心有SLV各512K,SRAM一共1M,這是足夠加載很多核心代碼。

b5eb93be-039c-11ed-9ade-dac502259ad0.png

說干就干,在代碼上去實現的話,可以使用ATTR_RAMFUNC修飾符放在定義的函數前面,這樣編譯的時候就會加載到RAM運行。

在實際調試中,單純幾個函數的修飾并不能解決問題。也不可能去手動一個一個修飾,好在與SES可以可視化去操作加載。從ATTR_RAMFUNC,Link文件可看到。

ATTR_RAMFUNC是把函數放在了section的.fast中

b6175e0e-039c-11ed-9ade-dac502259ad0.png

從Link可看到,fast是放在了ILM_SLV的256K空間中

b62d4c00-039c-11ed-9ade-dac502259ad0.png

于是我們可以參考Link,自己在copy個link,把fast放在更大的RAM上,也就是SRAM上

b6445bc0-039c-11ed-9ade-dac502259ad0.png

那么ses如何去加載這些函數到RAM上了,跟keil類似

右鍵點擊需要加載的文件夾,選擇options

b658e702-039c-11ed-9ade-dac502259ad0.png

選擇code段改為.fast,這樣就可以一次搞定加載所有需要到RAM運行的函數。

b6768b90-039c-11ed-9ade-dac502259ad0.png

根據之前的調試性能,再加載核心的放在RAM中運行,燒錄代碼進去,奇跡的時刻,從122fps提升到286,整整提升了兩倍性能,這已經對于SPI這個稍微缺陷IP,足夠有幫助了。

b68d26ac-039c-11ed-9ade-dac502259ad0.png

于此總結:

1、在從代碼優化,編譯器優化上,可以提高性能。

2、在1的基礎上,隨著代碼空間的增多,32k cache總有用完的時候,xip flash 也會有所損失性能,最好就是可以把主要的代碼加載到RAM中運行,更可提高性能。

3、除了32K cache的加持,內部RAM整合也有足夠2M,對于系統而言,是足夠性能整合的。

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

    關注

    5087

    文章

    19148

    瀏覽量

    306182
收藏 人收藏

    評論

    相關推薦

    夢芯科技精彩亮相CHINTERGEO 2024

    近日,以“智繪新天地 數領測繪展未來”為主題的測繪地理信息裝備行業展會CHINTERGEO 2024在湖北武漢中國光谷科技會展中心盛大開幕。
    的頭像 發表于 11-07 16:32 ?489次閱讀

    如何做一個hpm6750evk2的bootloader?

    我正在做一個hpm6750evk2的bootloader。設計很簡單,boot工程代碼只做跳轉到1M后的APP工程代碼處,APP工程就是做的一個點燈的程序而已,boot、APP工程都是跑
    發表于 10-23 19:01

    HPM6750 Bootloader設計

    我正在做一個hpm6750evk2的bootloader。設計很簡單,boot工程代碼只做跳轉到1M后的APP工程代碼處,APP工程就是做的一個點燈的程序而已,boot、APP工程都是跑
    發表于 10-23 18:59

    利用電容測試方法開創鍵合線檢測新天地

    作者:是德科技產品經理 Shawn Lee 鍵合線廣泛應用于電子設備、半導體產業和微電子領域。它能夠將集成電路(IC)中的裸與其他電子元器件(如晶體管和電阻器)進行連接。鍵合線可在芯片的鍵合焊盤
    的頭像 發表于 10-21 09:32 ?195次閱讀
    利用電容測試方法開創鍵合線檢測<b class='flag-5'>新天地</b>

    HPM6750evkmini如何實現可信的執行環境?

    HPM6700的datasheet中的1.2.15 信息安全系統有提到“基于BOOT ROM 的安全啟動機制,支持加密啟動,支持可信的執行環境”,請問可信的執行環境如何實現的?有相關的Demo或者資料嗎?是類似于TFM這樣的嗎?
    發表于 09-25 09:27

    hpm_manufacturing_tool linux 版本 選擇 hidraw 連接等待超時

    _manufacturing_tool_gui linux 版本 選擇 hidraw 連接 HPM6750 芯片,能識別到 hidraw 設備,單擊連接是提示重啟芯片這個時候會等待超時然后軟件報錯,此時查看 lsusb 設備是檢測不到 hpm6750
    發表于 08-07 16:43

    esp32-s3驅動rgb屏刷屏卡頓,花屏是什么原因?

    esp32-s3驅動rgb屏,根據test_rgb_panel.c,但是刷屏太卡頓了,運行lvgl的demo,fps為0,想請教一下rgb屏參(proch)和esp32-s3的設置,提高刷屏流暢度
    發表于 06-19 06:21

    【Vision Board創客營連載體驗】RA8D1-Vision Board 移植LVGL8.3驅動庫和觸摸屏驅動代碼

    ,與液晶屏驅動代碼一致: disp_flush函數中設置抽象刷屏函數為描點方式或者G2D加速方式,都可以實現LVGL刷屏LVGL初始化函數中設置
    發表于 05-13 19:53

    先楫半導體 hpm_sdk v1.5.0 正式發布

    hpm6750evk hpm6750evk2 hpm6750evkmini hpm6300evk hpm6200evk
    發表于 04-08 11:14

    先楫HPM5361EVK開發板,網友測評效果(二)

    EEWORLD)的支持,本文整理了網友@qinyunti的優秀報告,小伙伴們先睹為快!#1開發板介紹與視頻HPM5361EVK是基于先楫HPM5300系列高性能RISC
    的頭像 發表于 03-12 08:16 ?2194次閱讀
    先楫<b class='flag-5'>HPM</b>5361EVK開發板,<b class='flag-5'>網友</b>測評效果(二)

    RTThread的定時器中斷時間不準確,會有us級的抖動的原因?

    我在用hpm6750定時器,通過定時器中斷周期處理函數,周期1ms,但是定時器的每周期時間都會飄,會有us級的抖動,我的中斷回調函數如下: int us_temp[1000]; int us_idx
    發表于 02-23 07:09

    HPM6750體驗ADC

    1、新建RTT工程,工程中添加對ADC的驅動: 2、保存工程后,添加測試代碼。 3、我們根據原理圖上的J10接個,只有PE29是ADC3的輸出通道 4、先定義通道、任務 #define ADC_DEV_NAME\"adc3\"/* ADC 設備名稱 */ #define ADC_DEV_CHANNEL2/* ADC 通道 */ #define REFER_VOLTAGE 330/* 參考電壓 3.3V,數據精度乘以100保留2位小數*/ #define CONVERT_BITS(1 << 16)/* 轉換位數為16位 */ 5、添加任務: static void Adc_entry(void* paremeter) { rt_adc_device_t adc_dev; rt_uint32_t value,vol; rt_err_t ret = RT_EOK; adc_dev = (rt_adc_device_t)rt_device_find(ADC_DEV_NAME); if (adc_dev == RT_NULL) { rt_kprintf(\"adc sample run failed! can\'t find %s device!\\\\n\", ADC_DEV_NAME); } /* 使能設備 */ ret = rt_adc_enable(adc_dev, ADC_DEV_CHANNEL); if(ret == RT_EOK) { rt_kprintf(\"adc sample run success!find %s device!\\\\n\", ADC_DEV_NAME); } while(1) { /* 讀取采樣值 */ value = rt_adc_read(adc_dev, ADC_DEV_CHANNEL); rt_kprintf(\"the value is :%d \\\\n\", value); /* 轉換為對應電壓值 */ vol = value * REFER_VOLTAGE / CONVERT_BITS; rt_kprintf(\"the voltage is :%d.%02d \\\\n\", vol / 100, vol % 100); rt_thread_delay(500); } } 7、在主函數里啟用任務 Adc_thread = rt_thread_create(\"adc1\", Adc_entry, RT_NULL, 512, 16, 20); if(Adc_thread != RT_NULL) rt_thread_startup(Adc_thread); else return -1;
    發表于 02-17 16:00

    解決HPM6750EVK2jlink下載

    拿到HPM6750EVK2,使用jlink下載時,我原來用買jlink配的20轉10轉接板進行連接,下載程序里一直報不能連接到開發板。經過查找用手冊后,找到了問題。 我的jlink的引腳圖與之不對
    發表于 02-16 10:30

    先輯HPM6570用Jlink下載程序出錯

    as current target interface. J-Link>jtagconf -1 -1 J-Link>exec device=HPM6750xVMx Device
    發表于 02-16 09:32

    Embedded Studio 編譯器教程

    最近入手先輯的HPM6750,需要使用Embedded Studio 編譯器來做開發,各位推薦一下學習資料。
    發表于 02-04 08:01
    主站蜘蛛池模板: 三级黄色在线| 一个人看的WWW高清电影| av先锋影音资源男人站| 千禧金瓶梅快播| 国产免费看黄的私人影院| 亚洲高清无在码在线电影| 久久精品亚洲精品国产欧美| 55夜色66夜亚洲精品播放| 日本无码毛片一区二区手机看| 国产成人精视频在线观看免费| 亚洲AV电影天堂男人的天堂| 久久免费视频| 成熟YIN荡美妞A片视频麻豆| 亚洲精品成人a| 女人张开腿让男人添| 国产精品一库二库三库| 中文字幕无码亚洲视频| 三级黄色高清视频| 快播最新电影网站| 99在线观看精品| 亚洲精品AV无码永久无码| 欧美 国产 日产 韩国 在线| 国产人妻麻豆蜜桃色精| 97人妻丰满熟妇AV无码| 亚洲 色 欧美 爱 视频 日韩| 蜜臀AV999无码精品国产| 国产欧美一区二区三区久久| 91亚洲精品| 99久久精品久久久久久清纯| 天堂so导航| 免费A级毛片无码鲁大师| 国产精品久久免费视频| 99久久蜜臀亚洲AV无码精品| 亚洲欧美日韩国产手机在线| 色吧.com| 男人私gay挠脚心vk视频| 俄罗斯12x13x处| 伊人久久精品线影院| 日日摸夜夜嗷嗷叫日日拍| 国产亚洲精品第一区香蕉| sihu国产精品永久免费|