ARM Development Studio開發工具
ARM的行業參考C / C ++編譯工具針對基于ARM架構的設備的效率進行了優化。 使用ARM Compiler提高性能,創建更小的代碼。
- 適用于各種嵌入式工作場景
- 裸機和嵌入式(RT)OS應用程序的代碼優化
- 一流的代碼密度
- 與生態系統合作伙伴的兼容
- 最大化發揮ARM的設計的潛力
憑借出色的性能,ARM Compiler可以開發高效產品,利用ARM Cortex處理器和架構的所有功能,從ARMv6-M到ARMv8-A 64位ARM。 這種通用編譯器可優化裸機和嵌入式(RT)OS應用程序的代碼。
ARM Compiler可在ARM Development Studio中使用,包括專用的微控制器專家工具包Keil MDK。 作為開發工作室金牌和銀牌版本的一部分,Keil MDK Professional中包含適用于Cortex-M設備的安全認證編譯器。 最后,為了與前幾代產品最終兼容,Development Studio許可證還支持以前版本的ARM編譯工具,例如ARM Compiler 5和RVCT。
- 實時場景的表現
ARM Compiler針對各種嵌入式工作負載以及單一基準測試進行了優化。 這是我們對編譯器的持續投資的結果。
- 自動捕獲目標
使用戶能夠自動直接在目標上捕獲數據,以便集成到現有的構建系統中。 識別性能下降或出現圖形異常時,在引入后立即解決這些問題。
- 滿足安全需求
對于功能安全 應用,可通過附加的ARM Compiler安全包簡化TüV SüD認證過程。
- 生成更快的代碼
通過結合微體系結構特定的指令調度,整個程序優化策略和精細調整的庫,ARM Compiler 6顯著加快了各種工作負載的執行時間。 在一些大型工業和汽車案例中,與前幾代相比,性能提升超過30%。 這是針對復雜,逼真的嵌入式代碼進行持續優化投資的結果。
- 創建更小的代碼
嵌入式開發人員總是在性能和代碼大小之間尋求適當的平衡。 通過一系列強大的優化技術,Arm Compiler可提供小巧高效的代碼,尤其適用于Cortex-M設備。
- 構建安全關鍵代碼
由安全專家TüV南德意志集團評估和認證的編譯器分支機構,資格證書文件和長期維護合同,Arm Compiler的安全包簡化并加速了實現功能安全認證的過程。
- Functional safety Arm 編譯器
Arm Compiler C / C ++工具鏈的全面安全包,可加速安全關鍵代碼的構建并簡化TüV SüD的認證過程.
Debug
Arm Debugger
一個適用于現代復雜SoC的調試器Arm Debugger可幫助您在整個開發過程中找到軟件漏洞的根源。 從設備啟動到應用程序調試,它可用于在虛擬平臺和硬件上開發代碼,以幫助您在競爭對手之前將產品推向市場。
支持前沿的設備,以及您自己的設備
Arm Development Studio附帶預加載的調試配置和許多常用設備的示例。 但是,如果您正在設計自己的SoC或正在為不太流行的ASIC開發軟件,Arm Debugger和DSTREAM調試探針可以幫助創建新的設備配置,不僅描述其處理器內核,還描述其他調試塊,如交叉觸發器, 跟蹤宏單元和跟蹤漏斗。
更輕松的多核調試
Arm Debugger在設計時考慮了復雜的SoC開發,因此多核調試與在單個內核上快速測試執行一樣直觀。 支持對稱(SMP)和非對稱(AMP)多處理,以及包括異構(big.LITTLE技術)系統的復雜操作模式。
Arm Debugger在基于Eclipse的Arm Development Studio中可用,它為高級用戶提供了一個Python腳本界面,可以按照他們想要的方式配置SoC上的每個Arm CoreSight組件,同時保持調試器界面對每個人都簡單直觀。
更快更容易的調試
命令行和腳本調試命令視圖為您提供了一種熟悉的命令行調試方法。對于純粹從命令行驅動Arm Debugger的項目,您可以完全在Eclipse環境之外工作。我們知道這仍然是一種流行的調試方式,因此請提供一個Development Studio命令提示符,以便您快速訪問。
- 跟蹤數據
在調試代碼時,系統視圖是查看數據更改的簡便方法。
- 輕松搜索功能
快速訪問搜索框可幫助您查找特定視圖或功能,從而節省時間
- 上下文幫助
F1提供了集成的上下文幫助,可幫助您解決復雜的調試問題。
- 復制會話
通過歷史記錄視圖從調試會話中導出一組完整的步驟。
- C表達無處不在
在寄存器,內存地址,斷點和表達式視圖的內容中編寫類似C的表達式。
可以使用MDK兼容命令閃存,包括支持基于CMSIS軟件包中包含的信息的閃存設備。
- 內存填充和導出
通過開始和結束地址或表達式將字節寫入內存或導出內存內容
在整個產品生命周期中調試應用
Arm Debugger是一個理想的工具,可以在整個團隊中實現標準化。從芯片開發到應用程序開發,您的團隊可以從增強的協作和統一的用戶體驗中受益。
Development Studio IDE提供平臺配置編輯器(PCE)等實用程序,它使用JTAG自動檢測您的平臺。雖然現代SoC通常需要一些額外的手動配置,但初始掃描通常會發現幾個調試和跟蹤元素,為您提供了一個良好的開端。
對于交叉觸發器,跟蹤生成器,接收器和結構,以及您自己的自定義IP,我們提供了一個稱為Debug and Trace Services Layer(DTSL)的抽象層,它允許您使用簡單的Jython腳本描述這些元素。
但是,如果您使用的是現成的部件,則很可能在Development Studio中已經預先構建了調試配置。這使得大多數調試都是連接到目標板的情況。
識別目標操作系統
Arm Debugger集成了對流行的實時操作系統(RTOS)以及Linux和Android的深入可見性。 在目標板上,您可以輕松地可視化所有任務/線程及其調用框架,設置任務/特定于線程的斷點,以及在單步執行代碼時查看內核資源(如郵箱和信號量)。 在調試Linux內核時,您還可以查看和加載動態加載模塊的符號,以及設置掛起的斷點。 支持的操作系統包括:
Linux & Android
FreeRTOS?
Keil? CMSIS-RTOS RTX
NXP Semiconductors MQX?
Micrium? μCOS (II and III)
Express Logic ThreadX?
Segger embOS?
Quadros RTXC?
Mentor Graphics? Nucleus?
SYSGO PikeOS? Hypervisor
Wind River VxWorks?
eForce μC3? Standard
內存可視化
使用地址修飾符,您可以訪問特定類型的內存,例如,如果鍵入S:0x0,調試器將在TrustZone安全模式下讀取地址0x0處的內存。這些前綴可用于加載符號,設置斷點,查看/修改內存內容并報告當前停止狀態。
MMU查看和地址轉換
利用MMU視圖自動完成頁表行走,將虛擬轉換為物理內存地址并顯示內存映射的概述。
定制外設寄存器
目標配置編輯器能夠為視圖添加自定義外設寄存器,從而可以針對目標特定外設和寄存器進行定制。導出自定義配置
以CMSIS-SVD兼容格式導出已配置目標的設置,以便在Keil MDK中進一步工作。
斷點和觀察點
完全控制Arm Debugger通過對硬件,軟件和條件斷點的最大控制,Arm Debugger可幫助您消除復雜的錯誤。
可以將條件斷點設置為在類似C的表達式求值為true時停止執行,在斷點觸發或運行調試器腳本之前允許多次命中,而線程和虛擬機特定的斷點可用于在從特定的特定位置命中時停止處理器 線。
您可以設置的斷點的類型和數量取決于內存區域,處理器中的硬件支持,調試接口和運行狀態。
同樣,您也可以設置監視數據訪問的地址或值的觀察點,而不是從特定地址執行的指令。
跟蹤點
開發工作室中的跟蹤功能非常強大,當您反復停止和啟動核心時,提供一種非侵入性的方法來挑選難以發現的錯誤。為了應對現代系統的復雜跟蹤拓撲,Development Studio允許您設置和配置跟蹤啟動,停止和觸發點。
在Arm Debugger中,可以從Arm組裝編輯器,C / C ++編輯器,反匯編視圖,功能視圖,內存視圖或跟蹤視圖中設置跟蹤點。
協作調試和跟蹤
斷點,跟蹤點和觀察點都可以導出,以便在不同的Development Studio工作區中使用,從而幫助您以團隊形式調試代碼。
Keil μVision Debugger
具有流式跟蹤的微控制器調試器
使用流式跟蹤調試微控制器
μVision調試器為Keil MDK軟件工具套件提供調試功能,是一個用于測試,驗證和優化應用程序代碼的單一環境。
除響應式運行控制調試外,它還支持使用數據跟蹤和非侵入式指令跟蹤,從而提供調試和系統優化。 除了支持許多第三方調試適配器,當它與ULINK探針配對時,它還提供流指令跟蹤,功率測量功能和數據跟蹤。
組件查看器和事件記錄器
僅使用內存讀取和寫入,組件查看器和事件記錄器提供有關變量,結構或其他對象中的軟件組件的信息。 它們還顯示軟件組件的執行狀態和事件信息。 Keil MDK-Middleware和幾個實時操作系統包含事件注釋 - 事件記錄器允許您快速分析和理解這些軟件塊的操作。
事件統計
顯示代碼執行的統計數據。 與任何調試適配器一起使用時,它會記錄執行時間和已注釋代碼段的調用次數。 與ULINKplus調試適配器配合使用時,開發人員可以在注釋代碼中分析能源使用情況,這在改善電池驅動設備的功率配置時尤其有用。
數據和事件跟蹤
分析所有基于Cortex-M3 / M4 / M7 / M23 / M33的設備上的數據和事件跟蹤信息。 在系統運行時,您可以跟蹤中斷和異常。 它還支持通過Instrumented Trace Macrocell(ITM)傳輸的printf樣式的調試消息。
指令跟蹤
當使用μVision?Debugger和ULINKpro調試探針時,您可以直接將指令跟蹤流傳輸到PC,從而可以調試歷史序列,執行分析,性能優化以及安全關鍵應用程序所需的代碼覆蓋率分析。 嵌入式跟蹤宏單元(ETM)使其成為可能,嵌入式跟蹤宏單元(ETM)集成在許多基于Cortex-M3 / M4 / M7 / M33的設備中。Debug Probes
一系列調試探針支持JTAG和串行線調試連接,無論是用于深度嵌入式系統中的高速串行跟蹤還是更簡單的微控制器調試。Analyze
Streamline Performance Analyzer
整個系統的完整性能視圖。 這種簡單易懂的可視化有助于分析在CPU,GPU或NPU上花費的所有時間。
裸板系統支持
Streamline支持裸機系統,可與各種RTOS一起用于從最小的Cortex-M到最大的基于Cortex-A的系統的各種性能分析。 通過編譯系統特有的生成代理代碼,簡化裸金屬的工作。 此代碼從系統收集相關的性能數據,以便傳輸和導入Streamline。 完成后,用戶可以像使用Linux一樣生成分析和可視化。修復裸機系統中的性能瓶頸
Streamline可以使用硬件計數器和一系列其他性能指標來分析整個系統,以識別瓶頸。 簡化裸金屬系統提供相同級別的性能分析,但專門針對基于Linux的操作系統不存在的基于Cortex-R和Cortex-M的設備。
基于CPU的采樣器
對程序計數器進行采樣,以顯示CPU在系統中花費時間的位置,從系統級到逐行應用程序源代碼
重點分析
過濾掉與分析無關的信息,專注于某個瓶頸,或檢查特定應用程序或線程的性能。指令跟蹤
簡化裸裸板系統直接從您的系統導入指令跟蹤,顯示您的應用程序的確切位置,并填充所有標準的Streamline視圖。 此功能可顯示準確的調用路徑以及CPU花費時間的確切位置。 通過編譯系統特有的生成代理代碼,簡化裸板系哦他能夠的工作。 此代碼收集用于從系統傳輸到Streamline的性能數據。
用于多種跟蹤機制
我們知道有很多不同的系統,每個系統都有不同的跟蹤功能,因此Streamline for Bare-metal系統可以通過STM ITM和ETM從生產設備中提取數據。 在沒有跟蹤機制的情況下,該工具將數據放入內存中,允許用戶決定如何將其傳輸到PC。
Graphics
Mali Graphics Debugger Professional
通過查找和修復缺陷和性能問題來調試和優化圖形內容。
- OpenGL ES,Vulkan和OpenCL的高級API跟蹤
- 多供應商GPU支持
- 自動捕獲目標
- 腳本支持客戶分析目標
- 完整的跟蹤重播
- Graphics development tools
調試和優化圖形內容
查找并修復圖形缺陷和性能問題,以減少解決方案的上市時間。
標準的Mali Graphics Debugger允許開發人員在他們的應用程序中跟蹤OpenGL ES,Vulkan和OpenCL API調用,并逐幀了解對應用程序的影響,以識別可能的問題。 調試器支持基于Android和Linux Arm的目標平臺。 在Arm Developer Studio中提供的專業版中,下面的附加功能可以實現針對芯片,操作系統和嵌入式產品發布的更全面的調試和分析。
幀硬件counter
在評估圖形時,您希望盡快識別哪個幀導致問題。 如果您運行的是具有最新驅動程序的基于Mali的設備,則Mali Graphics Debugger將按Frame顯示硬件計數器。 這顯示了生成每個幀所需的資源以及哪個幀最昂貴。
虛擬原型
內部函數提供針對未能很好地映射到高級語言的公用代碼序列或指令的支持。
- ETSI內部函數提供用在若干示例算法中的電信基元
- TI C55內部函數支持為利用特定于TI的擴展而編寫的算法
- Cortex-M4內部函數用于面向板載DSP
- 其他內部函數允許訪問從C語言不易訪問的所有ARM硬件指令,降低了以匯編語言編寫代碼的需要
盡可能在早期處理器上模擬內部函數。
Fast Models
快速且功能準確的運行的Arm IP視圖模型無需物理目標即可啟用軟件開發在硅可用性之前的早期軟件開發通過虛擬連接到模型進行源級調試腳本接口支持自動化和持續集成流程標準接口支持與第三方IP模型的集成所有Development Studio版本都支持模型調試
Cycle Models
Arm IP的100%周期精確模型基于編譯的RTL的模型,導致完整的循環精度使用準確的信息優化性能開發需要確定性的裸機軟件和低級固件模型檢測可實現系統級可見性和調試所有Development Studio版本都支持模型調試
FVP
準確,可立即運行的模型
即用型,預配置,快速且功能準確的仿真平臺
完整的系統仿真,包括處理器,存儲器和外設
完全可調試和自動化
支持裸機和OS級開發,包括Linux示例
包含在每個Development Studio Edition中
-
嵌入式系統
+關注
關注
41文章
3593瀏覽量
129473 -
安卓
+關注
關注
5文章
2130瀏覽量
57198 -
米爾科技
+關注
關注
5文章
227瀏覽量
20969
發布評論請先 登錄
相關推薦
評論