成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 資料介紹
    • 引言
    • 關(guān)于外設(shè)中斷
    • 關(guān)于 DMA
    • 關(guān)于 GPIO 及其連接的外設(shè)
    • STM32CubeMX 外設(shè)初始化對(duì) TrustZone 的支持
    • 小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

LAT1272 STM32 TrustZone開發(fā)調(diào)試技巧(2)——外設(shè)使用常見問題

03/24 10:43
841
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

LAT1272 STM32 TrustZone開發(fā)調(diào)試技巧(2)——外設(shè)使用常見問題

1.28 MB

引言

在 STM32 TrustZone 開發(fā)調(diào)試技巧的第(1)篇中,我們介紹了內(nèi)核的 SAU/IDAU,地址的安全屬性配置,資源的安全屬性配置,以及內(nèi)核訪問資源的安全規(guī)則等內(nèi)容,這部分作為 TrustZone S/NS 工程開發(fā)的基礎(chǔ),讓 S 和 NS 工程代碼能夠基本運(yùn)行起來。在此基礎(chǔ)上,S/NS App 還需要使用片上外設(shè)等資源,實(shí)現(xiàn)應(yīng)用程序的業(yè)務(wù)邏輯和功能,這時(shí)候往往會(huì)遇到一些與外設(shè)使用相關(guān)的問題。

在這一篇中,我們將把重點(diǎn)放在 Trust Zone 架構(gòu)下應(yīng)用開發(fā)中使用外設(shè)的環(huán)節(jié),從外設(shè)中斷、DMA、GPIO 及其與 IO 連接的外設(shè)等幾個(gè)方面,介紹這些部分與傳統(tǒng)的不帶TrustZone 的 STM32 開發(fā)相比有哪些變化,同時(shí)會(huì)列舉一些相關(guān)開發(fā)中的常見問題,并給出問題的分析與解決方法,供開發(fā)者參考。

關(guān)于外設(shè)中斷

中斷向量表 Vector Table

傳統(tǒng)的 ARM V6/V7 內(nèi)核,例如 CM4、CM7,都只有一套中斷向量表,而帶 SecurityExtension 的 CM33 內(nèi)核有兩套中斷向量表,分別對(duì)應(yīng) CPU 的 S 和 NS 兩種狀態(tài)。

關(guān)于 DMA

DMA TrustZone aware 特性

STM32 MCU 中的 DMA 單元(例如 GPDMA, LPDMA)在 Trust Zone 框架下屬于 TZaware IP,DMA 能夠直接支持 AHB5 總線。

作為總線主設(shè)備,DMA 可以發(fā)出 S 安全或者 NS 非安全的 transaction。以 STM32U5GPDMA 為例,通過 GPDMA_SECCFGR.SECx 寄存器,可以將 DMA 的 Channel 設(shè)置為安全或者非安全通道。

關(guān)于 GPIO 及其連接的外設(shè)

GPIO TrustZone aware 特性

GPIO 在 Trust Zone 框架下是一個(gè) TZ aware IP,每個(gè)管腳都可以單獨(dú)配置其安全訪問屬性(通過 GPIOx_SECCFGR 寄存器)。上電默認(rèn)所有的 GPIO pin 都是安全屬性,當(dāng)某個(gè) GPIO pin 設(shè)置為安全,則它所對(duì)應(yīng)的 AF 寄存器,MODE 寄存器以及 I/O 數(shù)據(jù)都只允許 S 訪問,當(dāng)出現(xiàn) NS 訪問時(shí),效果會(huì)是 RAZ/WI,即讀為零/寫忽略。

如果某組 GPIO 其中如果至少一個(gè) pin 具有 S 屬性,那么這個(gè) GPIO 在 RCC 中對(duì)應(yīng)的clock 和 reset 控制位也會(huì)自動(dòng)具有安全屬性,只有安全代碼才能控制。

STM32CubeMX 外設(shè)初始化對(duì) TrustZone 的支持

這個(gè)部分,我們會(huì)結(jié)合前面提到的外設(shè)中斷、DMA、GPIO、Securable 外設(shè)等,簡(jiǎn)要介紹一下在 STM32CubeMX 工具中如何做 TrustZone 相關(guān)的配置。

小結(jié)

本文針對(duì) STM32 進(jìn)行 V8M TrustZone 開發(fā)中使用外設(shè)需要的配置做了簡(jiǎn)要介紹,也列舉了一些 TrustZone 環(huán)境下外設(shè)使用中的常見問題及其分析和解決方法,最后還提到了使用 STM32CubeMX 進(jìn)行外設(shè)安全配置的一些例子,希望對(duì)廣大開發(fā)者有所幫助。

在后續(xù)的篇章中,我們將總結(jié)一些其他的 TrustZone 開發(fā)中的常見問題及調(diào)試技巧,例如 Hard Fault 異常的處理與調(diào)試,TrustZone 中 App 使用 RTOS 的注意事項(xiàng)等,歡迎讀者繼續(xù)關(guān)注。

資料預(yù)覽

相關(guān)推薦

中山市| 贵定县| 石嘴山市| 新巴尔虎右旗| 红桥区| 麻栗坡县| 华阴市| 锡林浩特市| 驻马店市| 鄂伦春自治旗| 永清县| 郑州市| 郸城县| 洪泽县| 湘阴县| 云霄县| 延庆县| 石柱| 肥城市| 新乡县| 汾西县| 宁化县| 留坝县| 隆尧县| 内丘县| 桑日县| 白玉县| 平罗县| 慈利县| 营山县| 东明县| 南木林县| 邢台市| 文昌市| 遵义市| 祁门县| 临夏县| 遵化市| 儋州市| 海阳市| 信阳市|