01.
概述
全志科技T5系列是一個高性能四核 CortexTM–A53 處理器,適用于新一代汽車市場。T5系列符合汽車 AEC – Q100 測試要求。該芯片集成四核 CortexTM–A53 CPU、G31MP2 GPU、32 位 DDR3/LPDDR3/DDR4/LRDDR4 動態隨機存儲器。
MYC-YT507H核心板基于T507-H處理器研制,具有豐富的接口資源, 擁有良好的軟件開發環境,內核支持開源操作系統Linux。
在開發階段,建議配合核心板配套的評估套件 MYD-YT507H 來加速開發。評估套件的詳細信息請訪問:http://www.myir-tech.com/product
02.
實時內核設計
實時補丁我們選擇RT-Preempt來實現。
2.1.移植補丁
RT補丁官網從RT官網下載4.9.170對應補丁
https://wiki.linuxfoundation.org/realtime/start
https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.9/older/
把解壓后的補丁放到linux4.9目錄下,然后用下面命令打包即可 patch -p1 < ./patch-4.9.170-rt129.patch
由于代碼有差異,會提示大量不匹配,導致補丁打入失敗則用下面命令找出打入失敗文件
find./-name"*.rej"
手動逐一檢查rej文件,逐個修改
難點:
zram驅動,sdk中源碼引用自5.x版本驅動,需要找5.10左右RT補丁參考
thread_info.h文件中手動將PREEMPT_LAZY宏改序號、宏名字
問題點1:中斷上下文中調用搶占api(rt_spin_lock即mutex)導致sched異常。
分析與解決:
這個中斷是系統核心timer服務,至關重要。其通過request_percpu_irq注冊中斷isr,并不是常規request_irq或request_thread_irq,無法線程化。
繼續分析崩潰調用棧,在崩潰前最后的操作為cpufreq_cpu_get,通過分析其源碼,基本找到__account_system_time函數中調用了cpufreq_acct_update_power,其中又調用了rt_spin_lock函數導致崩潰。
通過分析cpufreq_acct_update_power函數,發現通過宏定義:CONFIG_CPU_FREQ_TIMES可以屏蔽該函數,進而不調用rt_spin_lock。
經測試,在menuconfig中,屏蔽CONFIG_CPU_FREQ_TIMES后,系統能正常啟動到login環節。
解決方法:
drivers/cpufreq/Kconfig中針對CPU_FREQ_TIMES設置與PREEMPT_RT_BASE的互斥。
configCPU_FREQ_TIMES bool"CPUfrequencytime-in-statestatistics" #defaulty dependson!PREEMPT_RT_BASE help ThisdriverexportsCPUtime-in-stateinformationthroughprocfsfile system. !It'sincompatablewithRT-Preemptscheduler.
Ifindoubt,sayN. |
打開RT實時測試工具,進行測試
在buildroot下面打開相關測試,根據下面描述打開rt-tests工具即可,打開測試工具測試步驟
2.2.其他影響性能的配置
禁用CPUFreq自動調頻,并設置主頻為最高頻率:
cd/sys/devices/system/cpu/cpufreq/policy0
echo userspace > scaling_governor
cat saling_max_freq > scaling_setspeed
(如不禁用cpufreq調頻功能,系統會因動態調頻產生極大的偶然延遲)
03.
實時性測試
空載測試
cyclictest -p 99 -t 1 -d 100 -i 1000 -D 24h -m -a -n
圖3-1.空載測試
CPU&內存滿載
cyclictest -p 99 -t 1 -d 100 -i 1000 -D 24h -m -a -n
增加壓力
stress-ng--cpu4--cpu-methodall--io4--vm50-d5--fork4--timeout36000s
圖3-2.滿載測試
數據對比:
板卡 |
MYD-YT507H |
測試時間 |
120min |
指令 |
cyclictest &stress-ng |
空載 |
平均 8us 最大 24us |
滿載 |
平均 13us 最大 136us |
表3-1.數據信息
04.
產品介紹
MYC-YT507H核心板采用SMD封裝形式貼片(郵票孔+背面焊盤)。標準配置有4種產品型號。它們在存儲配置、溫度等方面有一些差異,客戶可根據需求自行選擇合適的型號。
圖4-1 MYC-YT507H核心板
4.1.MYC-YT507H主要參數
名稱 |
主要參數 |
主控芯片系列 |
T5 Series |
主控芯片型號 |
T507-H |
處理器規格 |
4核 ARM CortexTM-A53 |
內存 |
LPDDR4 1GB/2GB |
存儲器 |
EMMC 8GB (其他容量可選) |
核心板尺寸 |
43 x 45 x 3.5 mm(帶屏蔽骨架) |
接口類型 |
SMD貼片,郵票孔+LGA |
PCB板規格 |
10層板設計,沉金工藝 |
操作系統 |
Linux 4.9 |
表4-1 核心板主要參數
4.2.MYD-YT507H外設接口資源主要參數
功能 |
參數 |
|
系統 |
POWER |
12V DC JACK |
KEY |
1路復位按鍵1路FEL刷機按鍵1路ON/OFF按鍵 |
|
SWITCH |
1路電源開關 |
|
BOOT SET |
1路撥碼開關 |
|
SD |
1路Micro SD卡槽 |
|
通訊接口 |
WIFI/BT |
1路WIFI/BT模塊接口,通過20PIN排針引出 |
1路4G Mini PCIE接口1路SIM卡座 |
||
2路 USB 2.0 HOST 接口,采用Type-A接口1路USB 2.0 OTG接口,采用Type-C接口 |
||
1路調試串口,通過串口轉USB,采用Type-C接口2路普通串口,通過擴展接口引出 |
||
多媒體接口 |
DISPLAY |
|
CAMERA |
1路MIPICSI攝像頭接口1路DVP攝像頭接口 |
|
AUDIO |
1路3.5mm音頻輸出接口1路SPDIF音頻輸出接口1路揚聲器擴展接口 |
|
擴展接口 |
Expansion IO |
1路2.54mm間距的40PIN排針,GPIO/TWI/UART |
表4-2 開發板外設接口資源主要參數
-
嵌入式
+關注
關注
5046文章
18821瀏覽量
298672 -
cpu
+關注
關注
68文章
10702瀏覽量
209432 -
開發板
+關注
關注
25文章
4771瀏覽量
96195 -
T507
+關注
關注
2文章
48瀏覽量
1530 -
米爾電子
+關注
關注
0文章
89瀏覽量
414
發布評論請先 登錄
相關推薦
評論