rvds

rvds

RVDS(RealView Development Suite)是ARM公司最新推出的面向SOC和大型複雜應用程式的高端開發工具,被業界稱為最好的ARM開發工具。

基本介紹

  • 中文名:rvds
  • 外文名:RealView Development Suite
  • 所屬公司ARM公司
  • 包含模組:IDE、RVCT、RVD、RVISS
包含模組,RVDS優點,

包含模組

RVDS包含有四個模組:
IDE:RVDS中集成了Eclipse IDE,用於代碼的編輯和管理。支持語句高亮和多顏色顯示,以工程的方式管理代碼,支持第三方Eclipse功能外掛程式
RVCT:RVCT是業界最優秀的編譯器,支持全系列的ARM和XSCALE架構,支持彙編、C和C++。
RVD:是RVDS中的調試軟體,功能強大,支持Flash燒寫和多核調試,支持多種調試手段,快速錯誤定位。
RVISS:是指令集仿真器,支持外設虛擬,可以使軟體開發和硬體開發同步進行,同時可以分析代碼性能,加快軟體開發速度。

RVDS優點

代碼小執行效率高
在相同的條件下,ARM公司做過測試,測試結果見圖1。編譯後代碼的大小和執行效率是衡量編譯器的兩個重要指標,測試結果表明,RVDS的編譯性能最好。
註:ADS1.2是ARM公司在1998年的產品
RVCT是RVDS集成的編譯器,它支持二次編譯和代碼數據壓縮技術,能夠生成更小的執行檔,節省ROM空間。
從軟體的角度來講,一個代碼的空間和時間是對立和矛盾的,RVCT支持根據套用的需要來選擇最佳化的方向。比如,對實時性要求高的套用,可以選擇時間的最佳化,對於ROM存儲空間有限的套用,可以選擇空間的最佳化。
RVCT能夠支持O3級別的最佳化,能夠對循環進行整合和展開的最佳化,進而提高代碼的執行效率。
RVCT還能夠根據ARM核心的流水線進行最佳化,讓ARM的流水線全速運行,不會因為代碼的原因而影響程式的執行效率。
支持Linux作業系統
RVDS可以運行在Linux作業系統上,支持Linux應用程式的開發和調試。從圖1中,我們可以看出RVDS編譯器生成的代碼比GNU小42%,生成代碼的執行效率比GNU快40%,可以減小系統存儲空間的需求,降低成本。
RVDS可以使用GCC所生成的庫或目標檔案。
調試功能強大
現今,隨著對設備的功能要求越來越高,軟體的規模在成幾何級增長,代碼的編寫和設計的時間在開發中的比例越來越小,而調試的難度和複雜性卻越來越高,這就要求我們有一個調試手段豐富的工具。
RVD是RVDS內部集成的調試軟體,具有以下ADS所不具備的重要功能:
(1條件斷點
支持表達式斷點的關聯,依據表達式的值產生斷點。產生斷點條件可以是表達式的真假和忽略的次數。
(2)數據斷點
支持根據對指定地址的訪問行為,例如讀、寫、讀/寫,可以產生數據斷點,並且還可以根據指定地址的內容值產生更複雜的數據斷點。例如位掩碼、值的範圍等。
(3)晶片外設描述檔案
ADS1.2中,只能通過Memory來觀察晶片外設的暫存器,而且,還不能保存。這就意味著,每一調試都需要做重複的動作。在RVD中,可以通過檔案的方式來描述外設暫存器。
(4)支持Flash燒寫
RVD的Flash燒寫更方便,提供有C語言接口,可以輕鬆實現。
(5)可以實現連續調試
目標板的程式運行後,再使用RVD連線調試,並且,不干擾運行環境,保護運行現場,進而快捷的找到問題所在。
(6)多核調試
對於那些高實時性、低功耗、運算量大的套用,單核的晶片已經很難滿足要求,因此,多核是今後嵌入式晶片設計的趨勢。RVD能夠支持多核的調試,每個核對應一個視窗,完全可以用單核的調試手段去調試多核中的每一個核。
Trace和Profile
Trace功能是指RVDS可以記錄ARM處理器從開始到停止這段區間執行的所有動作。記錄的內容包括指令和記憶體訪問行為。
Profile功能是指RVDS可以對Trace功能所記錄的指令進行性能分析
Trace和Profile功能主要有以下三個主要功能:
(1對程式進行最佳化
編譯器不能夠對函式進行全方位的最佳化,通過Trace和Profile,能夠實現對那些占用系統資源最多或者關鍵的算法進行最佳化,進而,提高系統的實時性。圖2表示的是代碼中所有函式運行時間的統計。
(2對程式進行代碼測試
Profile性能分析圖Profile性能分析圖
對於設備的安全性和可靠性要求高的套用,使用Trace和Profile功能可以對代碼進行覆蓋率測試,找到程式中的死角,進而提高設備的可靠性和程式的健壯性。
(3調試
由於,Trace功能能夠記錄ARM所執行的所有指令,所以,能夠判斷出錯誤的所在,和RVD是相輔相成。
外設虛擬
常規的嵌入式開發流程是:先硬體設計,後軟體開發,這樣,會耽擱軟體開發的進度。
RVISS是RVDS內部集成的一個功能模組,包含有ARM核心模型和外設模型,並且,提供有與VC++的接口,可以實現LCD、觸控螢幕等複雜的虛擬外設。
使用RVISS的外設模型虛擬系統的外設,可以做到和硬體設計同步,大大提高了軟體開發的時間。例如,RVISS中的定時器虛擬外設,提供有通用的定時器功能,可以虛擬產生中斷。
Profiler
RealViewProfiler是ARM新一款獨特的產品,能夠在無限制的時段,對嵌入式應用程式性能進行非干擾分析,支持運行頻率高達250MHz。這意味著,RealViewProfiler可以任意長時間地分析你的軟體性能,可以幾分鐘,幾小時甚至幾天。
RealViewProfiler基於硬體和快速實時系統模型,使直觀的用戶界面和軟體性能分析相結合。從而,使得性能分析成為每個嵌入式軟體開發者日常工作的必須部分,大大降低項目風險,加快工程進度。
使用RealViewProfiler減小項目風險使用RealViewProfiler減小項目風險
(1長時間性能分析
RealView Profiler的最佳化過程RealView Profiler的最佳化過程
提供無限時間內代碼的分析,通過時間的積累,能夠分析出更全面的性能,測試更高的可靠性,以確保代碼的質量。
(2無干擾分析
在分析過程中,不干擾程式的運行,最大程度的實現和真實運行環境的一致,保證分析結果的真實性。
(3代碼覆蓋率測試
根據記錄的指令,能夠進行代碼覆蓋率的測試和以函式為單位的性能分析。
(4硬體平台分析
指令覆蓋率指令覆蓋率
函式級代碼覆蓋率信息的動態調用圖形函式級代碼覆蓋率信息的動態調用圖形
結合RVI和RVT,profile創新使用流分析技術。流分析技術不依賴於板上的緩衝器,分析時間長短取決於用戶的需要。RVT採用USB2和PC主機相連,支持最大頻率為250MHz。
(5虛擬平台分析
與硬體的連線與硬體的連線
Profiler包含ARM Versatile/EB 開發板的快速實時系統模型,可以在沒有硬體的情況下進行性能和代碼覆蓋率分析。
(6出眾的代碼分析能力
1)通過指令的聯鎖信息,能識別出可以被最佳化的指令。
2)當指令的執行時間超過理想周期時,會高亮顯示指令,能夠識別記憶體瓶頸。
3)能分析函式的延遲和執行效率。
4)以圖形顯示函式的調用信息。
5)基於現代編譯最佳化技術,能夠實現原始碼和生成代碼的關聯。
(7)直觀的用戶界面
每條指令聯鎖信息的顯示每條指令聯鎖信息的顯示
高亮顯示超出理想周期的指令高亮顯示超出理想周期的指令
連結後的彙編程式和原始碼顯示連結後的彙編程式和原始碼顯示
使用Eclipse IDE,提供你想要的界面。以餅狀圖,條形圖等方式顯示結果,操作簡單,使用方便。
整體分析顯示圖整體分析顯示圖
RVI JTAG仿真器
RVI仿真器是ARM公司推出的JTAG調試工具,和RVDS結合使用,能實現原始碼調試。RVI具有以下特點。
支持ARM7ARM9、ARM10、ARM11Cortex等全系列ARM核心下載速度1.3MByte/S支持ADS、RVDS、Green Hill、GCC、Tasking、IAR等編譯器支持MMU調試支持WinCE和Linux核心調試支持Coresight調試技術支持DSP調試支持TI OMAP平台調試

相關詞條

熱門詞條

聯絡我們