ARM開發工具綜述

2021-04-07 08:21:25 字數 4570 閱讀 1549

使用者選用arm處理器開發嵌入式系統時,選擇合適的開發工具可以加快開發進度,節省開發成本。因此一套含有編輯軟體、編譯軟體、彙編軟體、鏈結軟體、除錯軟體、工程管理及函式庫的整合開發環境(ide)一般來說是必不可少的,至於嵌入式實時作業系統、評估板等其他開發工具則可以根據應用軟體規模和開發計畫選用。

1、指令集模擬器

部分整合開發環境提供了指令集模擬器,可方便使用者在pc機上完成一部分簡單的除錯工作,但是由於指令集模擬器與真實的硬體環境相差很大,因此即使使用者使用指令集模擬器除錯通過的程式也有可能無法在真實的硬體環境下執行,使用者最終必須在硬體平台上完成整個應用的開發。

2、駐留監控軟體

駐留監控軟體是一種比較低廉有效的除錯方式,不需要任何其他的硬體除錯和**裝置。arm公司的angel就是該類軟體,大部分嵌入式實時作業系統也是採用該類軟體進行除錯,不同的是在嵌入式實時作業系統中,駐留監控軟體是作為作業系統的乙個任務存在的。

駐留監控軟體的不便之處在於它對硬體裝置的要求比較高,一般在硬體穩定之後才能進行應用軟體的開發,同時它占用目標板上的一部分資源,而且不能對程式的全速執行進行完全**,所以對一些要求嚴格的情況不是很適合。

3、jtag**器

jtag**器也稱為jtag偵錯程式,是通過arm晶元的jtag邊界掃瞄口進行除錯的裝置。jtag**器比較便宜,連線比較方便,通過現有的jtag邊界掃瞄口與 arm cpu 核通訊,屬於完全非插入式(即不使用片上資源)除錯,它無需目標儲存器,不占用目標系統的任何埠,而這些是駐留監控軟體所必需的。另外,由於jtag除錯的目標程式是在目標板上執行,**更接近於目標硬體,因此,許多介面問題,如高頻操作限制、ac和dc引數不匹配,電線長度的限制等被最小化了。使用整合開發環境配合jtag**器進行開發是目前採用最多的一種除錯方式。

在以下的章節中,我們選取了arm sdt、arm ads、multi 2000、hitools for arm、embest ide for arm五種整合開發環境向讀者作乙個簡單的介紹,這些產品在國內有相對較暢通的銷售渠道,使用者容易購買。前三種由國外廠商出品,歷史比較悠久,在全球範圍內應用較為廣泛,後兩種由國內廠商推出,具有很高的價效比。另外選取了國際市場上較流行的兩種jtag**器:epi公司的jeeni和arm公司的multi-ice。

二、 arm sdt

arm sdt的英文全稱是arm software development kit ,是arm公司(www.arm.com)為方便使用者在arm晶元上進行應用軟體開發而推出的一整套整合開發工具。arm sdt經過arm公司逐年的維護和更新,目前的最新版本是2.5.2,但從版本2.5.1開始,arm公司宣布推出一套新的整合開發工具arm ads 1.0,取arm sdt而代之,今後將不會再看到arm sdt的新版本。

arm sdt由於**適中,同時經過長期的推廣和普及,目前擁有最廣泛的arm軟體開發使用者群體,也被相當多的arm公司的第三方開發工具合作夥伴整合在自己的產品中,比如美國epi公司的jeeni**器。

arm sdt(以下關於arm sdt的描述均是以版本 2.50為物件)可在windows95、98、nt以及solaris 2.5/2.6、hp-ux 10上執行,支援最高到arm9(含arm9)的所有arm處理器晶元的開發,包括strongarm。

arm sdt包括一套完整的應用軟體開發工具:

ä armcc arm的c編譯器,具有優化功能,相容於ansi c。

ä tcc  thumb的c編譯器,同樣具有優化功能,相容於ansi c。

ä arma** 支援arm和thumb的彙編器。

ä armlink arm聯結器,連線乙個和多個目標檔案,最終生成elf格式的可執行映像檔案。

ä armsd arm和thumb的符號偵錯程式。

以上工具為命令列開發工具,均被整合在sdt的兩個windows開發工具adw和apm中,使用者無需直接使用命令列工具。

arm sdt還提供一些實用程式,如fromelf、armprof、decaxf等,可以將elf檔案轉換為不同的格式,執行程式分析以及解析arm可執行檔案格式等。

arm sdt整合快速指令集模擬器,使用者可以在硬體完成以前完成一部分除錯工作;arm sdt提供ansi c、c++、embedded c函式庫,所有庫均以lib形式提供,每個庫都分為arm指令集和thumb指令集兩種,同時在各指令集中也分為高位元組結尾(big endian)和低位元組結尾(little endian)兩種。

使用者使用arm sdt開發應用程式可選擇配合angel駐留模組或者jtag**器進行,目前大部分jtag**器均支援arm sdt。

arm sdt 2.50的零售價一般在4000美元到4500美元。

三、 arm ads

arm ads的英文全稱為 arm developer suite,是arm公司推出的新一代arm整合開發工具,用來取代arm公司以前推出的開發工具arm sdt,目前arm ads的最新版本為1.2。

arm ads起源於arm sdt,對一些sdt的模組進行了增強並替換了一些sdt的組成部分,使用者可以感受到的最強烈的變化是ads使用codewarrior ide整合開發環境替代了sdt的apm,使用axd替換了adw,現代整合開發環境的一些基本特性如原始檔編輯器語法高亮,視窗駐留等功能在ads中才得以體現。

arm ads支援所有arm系列處理器包括最新的arm9e和arm10,除了arm sdt支援的執行作業系統外還可以在windows2000/me以及redhat linux上執行。

arm ads由六部分組成:

ä **生成工具(code generation tools)

**生成工具由源程式編譯、彙編、鏈結工具集組成。arm公司針對arm系列每一種結構都進行了專門的優化處理,這一點除了作為arm結構的設計者的arm公司,其他公司都無法辦到,arm公司宣稱,其**生成工具最終生成的可執行檔案最多可以比其他公司工具套件生成的檔案小20%。

ä 整合開發環境(codewarrior ide from metrowerks)

codewarrior ide是metrowerks公司一套比較有名的整合開發環境,有不少廠商將它作為介面工具整合在自己的產品中。codewarrior ide包含工程管理器、**生成介面、語法敏感編輯器、原始檔和類瀏覽器、源**版本控制系統介面、文字搜尋引擎等,其功能與visual studio相似,但介面風格比較獨特。ads僅在其pc機版本中整合了該ide。

ä 偵錯程式(debuggers)

偵錯程式部分包括兩個偵錯程式:arm擴充套件偵錯程式axd(arm extended debugger )、arm符號偵錯程式armsd(arm symbolic debugger)。

axd基於windows9x/nt風格,具有一般意義上偵錯程式的所有功能,包括簡單和複雜斷點設定、棧顯示、暫存器和儲存區顯示、命令列介面等。

armsd作為乙個命令列工具輔助除錯或者用在其他作業系統平台上。

l 工程生成工具(project builer)

工程生成工具實現對專案原始檔、目標檔案、庫檔案以及子專案的統一管理,顯示程式結構,檢測檔案相互依賴關係,提供編譯和鏈結的圖形設定視窗,並可對程式語言的進行特定環境設定。

l 源**偵錯程式(source-level debugger)

源**偵錯程式提供程式裝載、執行、執行控制和監視所需要的強大的視窗除錯環境,支援各類語言的顯示和除錯,同時可以觀察各類除錯資訊。

l 事件分析器(eventanalyzer)

事件分析器提供使用者觀察和跟蹤各類應用系統執行和rtos事件的可配置的圖形化介面,它可移植到很多第三方工具或整合到實時作業系統中,並對以下事件提供基於時間的測量:任務上下文切換、訊號量獲取/釋放、中斷和異常、訊息傳送/接受、使用者定義事件。

l 效能剖析器(performance profiler)

效能剖析器提供對**執行時間的剖析,可基於**或圖形顯示結果,有效的幫助使用者優化**。

l 實時執行錯誤檢查工具(run-time error checking)

實時執行錯誤檢查工具提供對程式執行錯誤的實時檢測,對程式**大小和執行速度只有極小影響,並具有記憶體洩漏檢測功能。

l 圖形化瀏覽器(graphical brower)

圖形化瀏覽器提供對程式中的類、結構變數、全域性變數等系統單元的單獨顯示,並可顯示靜態的函式呼叫關係以及動態的函式呼叫表。

l 文字編輯器(text editor)

multi 2000的文字編輯器是乙個具有豐富特性的使用者可配置的文字圖形化編輯工具,提供關鍵字高亮顯示、自動對齊等輔助功能。

l 版本控制工具(version control system)

multi 2000的版本控制工具和multi 2000環境緊密結合,提供對應用工程的多使用者共同開發功能。multi 2000的版本控制工具通過配置對支援很多流行的版本控制程式,如rational公司的clearcase等。

五、 embest ide

embest ide英文全稱是embest integrated development environment,是深圳市英蓓特資訊科技****(www.embedinfo.com)推出的一套應用於嵌入式軟體開發的新一代整合開發環境。

embest ide是乙個高度整合的圖形介面操作環境,包含編輯器、編譯器、彙編器、鏈結器、偵錯程式等工具,其介面同microsoft visual studio類似(見下圖)。embest ide支援arm、motorola等多家公司不同系列的處理器,對於arm系列處理器,目前支援到arm9系列,包括arm7、arm5等低系列晶元。

chrome開發工具指南之綜述

第 一 快速定位檔案或者某乙個單詞 ctrl o ctrl f ctrl shift o ctrl shift f 第二 快速切換到某一行 ctrl g ctrl l 第三 控制台選擇器 返回選擇器的第乙個元素,相當於document.queryselector 返回所有匹配的元素,相當於docue...

RealView MDK開發工具

arm 2009 03 02 16 30 54 閱讀335 字型大小 大 中小 realview mdk開發工具源自德國keil公司,被全球超過10萬的嵌入式開發工程師驗證和使用,是arm公司目前最新推出的針對各種嵌入式處理器的軟體開發工具。realview mdk整合了業內最領先的技術,融合了中國...

MTK開發工具

開發工具 1。vc6或者更高。mtk的模擬器使用vc作為開發工具。一般有兩個版本 pc simulator和modis。似乎乙個是06年的乙個是07年的。2。ads activeperl msys mingw 其它。ads和activeperl一定要裝,msys和mingw在工程裡有就要工程主目錄下...