1. 背景介紹:
在TI上一代Jacinto 6汽車處理器中,例如DRA7x/TDA2x,為了實(shí)現(xiàn)性能與功能安全的綜合考慮,提供了名為DVFS(Dynamic Voltage Frequency Scaling)的機(jī)制,使能系統(tǒng)能夠?qū)崟r(shí)獲取芯片thermal狀態(tài),并動(dòng)態(tài)反饋調(diào)節(jié)系統(tǒng)電壓與運(yùn)行頻率,使得系統(tǒng)運(yùn)行在安全溫度范圍內(nèi),實(shí)現(xiàn)性能最大化。
在TI Jacinto? 7 處理器中,例如DRA8x/TDA4x,目前外部PMIC輸出電壓NVM固定,故推薦使用DFS來實(shí)現(xiàn)在固定電壓下的頻率調(diào)節(jié),從而實(shí)現(xiàn)對整芯片熱狀態(tài)的檢測以及控制。
2. 測試條件:
TDA4VM EVM開發(fā)板
TDA4VM RTOS SDK
3. TDA4動(dòng)態(tài)熱檢測與控制流程:
在TDA4 SOC系統(tǒng)中,可參照圖1所示流程進(jìn)行SOC熱狀態(tài)檢測以及控制,用戶可在應(yīng)用層對VTM(Voltage and Thermal Manager)的thermal值進(jìn)行實(shí)時(shí)讀取,并設(shè)置高溫超出閾值/常溫回落閾值,通過VTM的實(shí)時(shí)檢測以及對比,在超出閾值時(shí)產(chǎn)生溫度事件?;蛘咴趦?nèi)核中通過增加VTM驅(qū)動(dòng),并直接在上層應(yīng)用中讀取thermal溫度值并設(shè)置閾值,然后通過上層應(yīng)用邏輯來實(shí)現(xiàn)對thermal的監(jiān)控,在超出閾值時(shí)產(chǎn)生溫度報(bào)警事件。
圖 1 TDA4動(dòng)態(tài)熱檢測與控制流程圖
在得到溫度報(bào)警事件后,通過對TDA4內(nèi)部各核心運(yùn)行狀態(tài)以及運(yùn)行頻率的讀取,能夠在系統(tǒng)正常運(yùn)行范圍內(nèi),動(dòng)態(tài)調(diào)整各核心的運(yùn)行頻率,從而降低系統(tǒng)功耗,實(shí)現(xiàn)對系統(tǒng)熱狀態(tài)的控制。
4. VTM動(dòng)態(tài)熱檢測
首先需要?jiǎng)討B(tài)讀取SOC thermal溫度值,VTM可以用來讀取溫度值以及設(shè)置溫度報(bào)警閾值等,其詳細(xì)介紹參照TDA4 TRM手冊。其核心寄存器配置如表1所示:
表 1 VTM寄存器設(shè)置
Register in VTM module | Offset | Comments |
WKUP_VTM_TMPSENS_STAT_j | [9-0] DATA_OUT | 實(shí)時(shí)溫度值(ADC code數(shù)值) |
WKUP_VTM_MISC_CTRL2 | [9-0] MAXT_OUTRG_ALERT_THR | 高溫報(bào)警閾值,超出產(chǎn)生thermal alert |
WKUP_VTM_MISC_CTRL2 | [25-16] MAXT_OUTRG_ALERT_THR | 常溫回落閾值,產(chǎn)生alert clean |
WKUP_VTM_TMPSENS_CTRL_j | [11] MAXT_OUTRG_EN | Enable/Disable alert 事件 |
CTRLMMR_WKUP_RESET_SRC_STAT | [24] THERMAL_RST | 產(chǎn)生/清除 alert事件的標(biāo)志位 |
讀出來的DATA_OUT值為內(nèi)部ADC數(shù)值,需要進(jìn)行轉(zhuǎn)換才能成為攝制溫度值,其轉(zhuǎn)換方式如圖2所示:
圖 2 VTM ADC code與溫度值計(jì)算關(guān)系表
此處提供patch,能夠?qū)崿F(xiàn)在Linux端對內(nèi)部核心的thermal溫度值讀取。步驟如下:
a. 下載Linux SDK8.0并參照guide制作SD啟動(dòng)卡,并下載對應(yīng)thermal patch。
b. 參照下述流程安裝到原生SDK中。
cd $PSDK_PATH/board-support/linux-*
git am 0001-display-temperature-as-mili-celsius.patch
cd ../..
make linux
c. 參照下述流程將編譯后的文件更新至SD卡系統(tǒng)中。
Edit the file $PSDK_PATH/Rules.make
Set DESTDIR=/media/$USER/rootfs
cd $PSDK_PATH
sudo make linux_install
d. 參照下述流程進(jìn)行驗(yàn)證
cat /sys/class/thermal/thermal_zone*/temp
其中patch一共添加了五個(gè)域中kernel的溫度值,其打印如圖3所示:
圖 3 thermal溫度值讀取
其中對應(yīng)了五個(gè)Linux中的設(shè)備節(jié)點(diǎn),所輸出的值單位為毫攝氏度,例如圖3中所示結(jié)果以及硬件對應(yīng)關(guān)系為:
thermal_zone0 -> WKUP domain DMSC core -> 67.640℃
thermal_zone1 -> MAIN domain MPU A72 core -> 68.074℃
thermal_zone2 -> MAIN domain C7x core -> 68.507℃
thermal_zone3 -> MAIN domain GPU core -> 69.371℃
thermal_zone4 -> MAIN domain R5F core -> 68.074℃
5. TDA4核心動(dòng)態(tài)調(diào)頻控制
獲取到TDA4內(nèi)部各個(gè)核心實(shí)時(shí)的thermal值后,可以通過上層邏輯對讀取到的溫度值與預(yù)設(shè)的報(bào)警閾值進(jìn)行邏輯比較,然后采取對應(yīng)的措施進(jìn)行核心頻率調(diào)整。
在TDA4默認(rèn)文件系統(tǒng)中,提供k3conf通過指定的device ID以及clock ID來實(shí)現(xiàn)對各個(gè)核心頻率的讀取以及控制。
5.1 Device ID的獲?。?/strong>
可通過TISCI手冊J721E部分對各個(gè)模塊的device ID進(jìn)行查詢
圖4中列出了常用幾個(gè)核心的device ID。
圖 4 processor device ID
5.2 Clock ID的獲?。?/strong>
為了標(biāo)識(shí)在一個(gè)核心中多個(gè)不同模塊的頻率設(shè)置,引入了clock ID對其進(jìn)行區(qū)分,可在TISCI J721E部分對clock ID進(jìn)行查詢。
5.3 對應(yīng)核心運(yùn)行頻率檢測:
獲取到對應(yīng)核心device ID后,可通過下述指令打印出當(dāng)前對應(yīng)核心的運(yùn)行頻率。
k3conf dump clock DEVICE_ID
以A72_CORE0為例,可以得到其當(dāng)前運(yùn)行頻率為2GHz如圖5所示。
圖 5 A72 CORE0 運(yùn)行頻率
5.4 設(shè)置對應(yīng)核心運(yùn)行頻率:
若按照第三章中的流程計(jì)算,當(dāng)前運(yùn)行頻率需要進(jìn)行調(diào)整,可使用下述指令對當(dāng)前指定device ID以及clock ID 的模塊進(jìn)行頻率控制。在對其核心頻率進(jìn)行修改之前,需要首先對其對應(yīng)的鎖相環(huán)進(jìn)行修改,以A72_CORE0核心為例:
devmem2 0x00688040 w 0x80000001
k3conf set clock 202 2 1000000000
其修改過程如圖6所示:
圖 6 A72 CORE0頻率修改流程
其中每個(gè)TDA4內(nèi)部核心所支持的最大頻率受硬件限制,以TDA4VM為例,如圖7所示為不同PN中各核心所支持的最大頻率。
圖 7 TDA4VM中各核心所支持最大頻率
同樣的,在最大頻率之下,各核心的頻率設(shè)置并非隨機(jī)設(shè)置,其必須滿足內(nèi)部分頻器等硬件時(shí)鐘要求。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19740瀏覽量
232883 -
芯片
+關(guān)注
關(guān)注
459文章
51927瀏覽量
433695 -
adc
+關(guān)注
關(guān)注
99文章
6611瀏覽量
547736
發(fā)布評論請先 登錄
相關(guān)推薦
使用TDA4仿真器遇到的幾個(gè)疑問求解
TDA4對深度學(xué)習(xí)的重要性
TDA4動(dòng)態(tài)熱檢測與控制設(shè)計(jì)方案

德州儀器TDA4背后的OpenVX介紹
TDA4 SPL SBL啟動(dòng)流程簡析

TDA4:定制電路板啟動(dòng)指南

TDA4系列的SPI啟用和驗(yàn)證

基于Pytorch訓(xùn)練并部署ONNX模型在TDA4應(yīng)用筆記

TDA4 Edge AI處理器的性能和效率基準(zhǔn)測試

TDA4泊車應(yīng)用中的超聲波雷達(dá)集成方案

TDA4 HS Prime密鑰燒錄以及vHSM的集成

評論