《36-d3s5-5-RISC-V的調試和跟蹤技術2023 - 勞特巴赫中國.pdf》由會員分享,可在線閱讀,更多相關《36-d3s5-5-RISC-V的調試和跟蹤技術2023 - 勞特巴赫中國.pdf(16頁珍藏版)》請在三個皮匠報告上搜索。
1、RISCRISC-V V的調試和跟蹤技術的調試和跟蹤技術 20232023Lauterbach China 勞特巴赫中國 曹龑/行明安L行業應用行業應用開源社區開源社區標準化標準化存儲器存儲器安全安全處理器設計嵌入式系統物聯網設備高性能計算汽車電子繼續保持活躍RISC-V 國際組織持續推動發布了更新的指令集架構版本發布了特定的擴展標準,如嵌入式多核擴展(E)和向量擴展(V)加入了更多的內存模型提供了更靈活的存儲器訪問控制加入了對安全和特權處理器模式的支持安全擴展(S)的制定和推動 RISC-V在過去的一年2汽車電子領域:RISC-V調試與跟蹤的新興需求3L安全和可靠性安全和可靠性代碼覆蓋率測試
2、代碼覆蓋率測試實時追蹤實時追蹤增強調試分析功能增強調試分析功能汽車領域對調試和跟蹤的新興要求4高效的性能高效的性能綜合性調試功能綜合性調試功能多核調試和追蹤多核調試和追蹤 L汽車電子系統對性能要求較高,因此調試工具需要具備高效的性能,可以快速獲取和分析系統狀態和數據,以減少調試時間。汽車電子系統通常采用多核處理器,因此調試工具需要支持多核調試和追蹤,可以同時跟蹤多個核心的執行和狀態。調試工具應具備豐富的調試功能,包括斷點調試、單步執行、寄存器查看和修改、內存訪問等,以便開發人員可以深入調試和分析代碼。同時工具的穩定性,可靠性也要有極高的要求,保證調試工作的準確和順利。汽車領域對調試和跟蹤的新興
3、要求5高效的性能高效的性能綜合性調試功能綜合性調試功能多核調試和追蹤多核調試和追蹤L汽車電子系統需要具備高度的安全和可靠性。調試工具應提供相應的安全保護措施,如訪問控制、加密和認證等,以保護敏感數據和系統的安全性。代碼覆蓋率測試是一項重要的軟件測試活動,用于評估測試用例是否涵蓋了軟件的全部代碼。在汽車電子領域,可以確保軟件的可靠性和安全性,以支持全面的軟件驗證和測試。汽車電子系統通常需要實時處理和響應,因此調試工具應具備實時追蹤功能,可以實時獲取系統的執行狀態和數據,以便開發人員快速診斷和解決問題。未來可能會增強一些高級調試和分析功能。例如,更強大的斷點調試、事件觸發跟蹤、性能分析和能耗分析等
4、功能,以幫助開發人員更全面地理解系統的行為和性能。安全和可靠性安全和可靠性代碼覆蓋率測試代碼覆蓋率測試實時追蹤實時追蹤增強調試分析功能增強調試分析功能汽車領域對調試和跟蹤的新興要求6L異構多核系統的調試調試方式的廣泛兼容實時系統跟蹤和分析AUTOSAR AP/CP 的調試和跟蹤分析安全調試機制的支持高級動態代碼分析(ADCA)Tool Qualification Support-Kit(TQSK)軟件包調試工具相關功能舉例7復雜系統復雜系統性能分析性能分析安全相關安全相關L異構多核系統的調試8異構多核系統通常由不同類型的處理器和協處理器組成(例如異構多核系統通常由不同類型的處理器和協處理器組成
5、(例如RISCRISC-V+V+Arm/+DSP/+GTM Arm/+DSP/+GTM 等等),每個處理器可能運行不同的軟件任務。等等),每個處理器可能運行不同的軟件任務。這就要求調試工具更廣泛地支持異構系統的同步調試,兼容不同架構的這就要求調試工具更廣泛地支持異構系統的同步調試,兼容不同架構的調試邏輯。調試邏輯。AMPAMP(Asymmetric MultiAsymmetric Multi-ProcessingProcessing,非對稱多處理)系統,非對稱多處理)系統TRACE32 TRACE32 工具支持同時最多打開工具支持同時最多打開16 16 個軟件個軟件GUI,GUI,每個每個GU
6、IsGUIs可以控制和可以控制和調試一個或者多個內核進程,多個調試一個或者多個內核進程,多個GUIGUI們之間可以同步或獨立調試。們之間可以同步或獨立調試。SMP SMP(Symmetric MultiSymmetric Multi-ProcessingProcessing,對稱多處理)系統,對稱多處理)系統TRACE32 TRACE32 工具支持一個軟件工具支持一個軟件GUI GUI 同時控制多個同構內核的調試。同時控制多個同構內核的調試。多核多核之間默認同步控制,也可以單獨監控和控制某個或某幾個內核調試。用之間默認同步控制,也可以單獨監控和控制某個或某幾個內核調試。用戶可以根據實際需要靈活
7、配置。戶可以根據實際需要靈活配置。iAMPiAMP(Isolated AMPIsolated AMP,獨立非對稱多處理)系統,獨立非對稱多處理)系統iAMPiAMP系統是一種系統是一種AMPAMP系統的變體,它引入了代碼和數據的分隔性,以系統的變體,它引入了代碼和數據的分隔性,以增加安全性和隔離性。在增加安全性和隔離性。在iAMPiAMP系統中,每個處理器在物理上是隔離的,系統中,每個處理器在物理上是隔離的,并且它們之間也沒有任何共享資源。每個處理器運行獨立的操作系統實并且它們之間也沒有任何共享資源。每個處理器運行獨立的操作系統實例和軟件任務,彼此之間互不干擾。例和軟件任務,彼此之間互不干擾。
8、iAMPiAMP系統廣泛應用于安全性要求較系統廣泛應用于安全性要求較高的環境,如航空航天、軍事和重要基礎設施等。高的環境,如航空航天、軍事和重要基礎設施等。TRACE32 TRACE32 工具支持在同一個工具支持在同一個GUI GUI 窗口中分區控制不同應用的內核,支窗口中分區控制不同應用的內核,支持客戶可定制的配置。持客戶可定制的配置。LTrace方式調試方式的廣泛兼容9目標芯片和硬件往往有各種調試方式、接口的設計和需求,調試方式應目標芯片和硬件往往有各種調試方式、接口的設計和需求,調試方式應做好各種適配準備,隨機應變。做好各種適配準備,隨機應變。TRACE32TRACE32支持支持JTAG
9、JTAG、cJTAGcJTAG調試,并調試,并支持支持JTAG 20pinJTAG 20pin、MIPI 10pin/20pinMIPI 10pin/20pin等多種調試接口等多種調試接口TRACE32TRACE32已經支持已經支持SiFiveSiFive Nexus Nexus TraceTrace和和Siemens Siemens TessentTessent TraceTrace,并,并在積極跟進在積極跟進standard tracestandard trace的方案。的方案。另有諸多細節功能,如支持指令集擴展另有諸多細節功能,如支持指令集擴展調試,通過調試,通過Arm CoreSigh
10、tArm CoreSight、System System BusBus、SemihostingSemihosting調試等。調試等。PIB Nexus小功能functionDebug for specific ISA extensionsDebug via Arm CoreSight,System Bus,SemihostingL實時系統跟蹤和分析10一般對于安全性要求比較嚴格的系統,也都對實時性要求比較苛刻。因一般對于安全性要求比較嚴格的系統,也都對實時性要求比較苛刻。因此斷點、單步等普通的調試手段往往無法滿足需求。此斷點、單步等普通的調試手段往往無法滿足需求。還有一些無法復現的異常問題,對
11、于要求嚴格的系統,還有一些無法復現的異常問題,對于要求嚴格的系統,雖然發生的概率雖然發生的概率較低,也是無法接受的。較低,也是無法接受的。針對這些方面的需求就只能依賴實時跟蹤技術了。針對這些方面的需求就只能依賴實時跟蹤技術了。TRACE32TRACE32工具可在不影響系統執行性能工具可在不影響系統執行性能和功能的前提下,獲取到有效的程序和和功能的前提下,獲取到有效的程序和數據跟蹤信息。數據跟蹤信息。借助借助TRACE32TRACE32軟件的強大分析功能,實軟件的強大分析功能,實現對系統的性能統計,歷史程序代碼執現對系統的性能統計,歷史程序代碼執行流程的重構,行流程的重構,Cache Cache
12、 使用效率的分析使用效率的分析等等。等等。LAUTOSAR AP/CP 的調試和跟蹤分析11AUTOSAR AP/CPAUTOSAR AP/CP作為汽車上通用的操作系統,目前缺少高效的系統級作為汽車上通用的操作系統,目前缺少高效的系統級調試,尤其調試,尤其AP/CPAP/CP混合系統的協同調試手段?;旌舷到y的協同調試手段。TRACE32TRACE32支持最新的支持最新的APAP系統級調試,系統級調試,包括任務狀態,進程通信信息,事件,包括任務狀態,進程通信信息,事件,設備信息,文件系統等設備信息,文件系統等AP/CP AP/CP 系統的并行同步調試系統的并行同步調試按可兼容其它工具的格式輸出按
13、可兼容其它工具的格式輸出ARTI ARTI/ORTI/ORTI的跟蹤數據的跟蹤數據L高級動態代碼分析(ADCA)12軟件錯誤的代價可能是巨大的,在汽車領域甚至具有災難性后果。軟件錯誤的代價可能是巨大的,在汽車領域甚至具有災難性后果。Memory Memory 訪訪問錯誤是非常常見和具有重要影響的軟件缺陷類型問錯誤是非常常見和具有重要影響的軟件缺陷類型。TRACE32 TRACE32 最新的高級動態代碼分析最新的高級動態代碼分析(Advanced Dynamic Code Analysis,Advanced Dynamic Code Analysis,ADCAADCA)功)功能,實現對于代碼內存
14、訪問錯誤的自動能,實現對于代碼內存訪問錯誤的自動分析,分析,幫助例如內存泄露幫助例如內存泄露、變量變量訪問越界訪問越界等常見且等常見且影響較大的錯誤信息定位影響較大的錯誤信息定位。違規違規用例視圖統計,客戶可以根據需要單獨用例視圖統計,客戶可以根據需要單獨分析每個違規操作的案例分析每個違規操作的案例。為每個為每個違規操作提供了更細節的信息,例如違規操作提供了更細節的信息,例如“內存視圖”“內存視圖”和“寄存器視圖”和“寄存器視圖”??梢躁P聯到該可以關聯到該違規操作的源代碼段違規操作的源代碼段,以直接,以直接在工具中定位和修補違規操作的代碼在工具中定位和修補違規操作的代碼。L安全調試機制的支持1
15、3基本加密擴展基本加密擴展 (RISC-V Base Cryptographic Extension)提供了對稱和非對稱加密算法的硬件支持,用于保護敏感數據和進行安全通信。內存加密擴展內存加密擴展 (RISC-V Memory Encryption Extension)支持對內存和緩存中的數據進行加密和解密操作,以保護存儲和傳輸的數據安全。特權級安全擴展特權級安全擴展 (RISC-V Privileged Architecture Extension for Security)定義了特權級別體系結構的安全擴展,提供了更細粒度的訪問控制和安全策略。虛擬化擴展虛擬化擴展(RISC-V Virtua
16、lization Extension)支持虛擬化技術,允許多個操作系統或應用程序在同一個處理器上并發運行,提供隔離和安全的執行環境。分支目標標識符擴展分支目標標識符擴展(RISC-V Branch Target Identification Extension)可用于增強分支和跳轉指令的安全性,減少釣魚攻擊和控制流劫持的風險。LTool Qualification Support-Kit(TQSK)軟件包14簡化簡化TRACE32TRACE32工具鑒定工作和成本工具鑒定工作和成本TV NordTV Nord認證保證符合安全標準認證保證符合安全標準Customer Interface Custo
17、mer Interface 提供圍繞工具鑒定的全面服務提供圍繞工具鑒定的全面服務 Test SuitesTest Suites運行在目標環境中運行在目標環境中全面支持多核全面支持多核覆蓋范圍包括語句、分支、覆蓋范圍包括語句、分支、MC/DCMC/DC、函數和調用覆蓋、函數和調用覆蓋L小結汽車電子行業代表了對RISC-V應用的較高要求,除追求性能外,更需兼顧安全。調試工具需功能豐富,穩定可靠,適配性好,為芯片和產品高效開放護航。勞特巴赫在汽車行業已經深耕多年,利用其他芯片平臺的調試know-how,將經驗應用到RISC-V方向,并及時響應用戶與時俱進的新要求。15THANK YOU!Lauterbach China 勞特巴赫中國16