|
[轉貼]ARM開發過程
有適當工具之後,也要看適當的開發流程吧。轉貼對岸這篇ARM開發過程,看是否會水土不服!?
6 p1 w5 Q; W, ]8 s; S1 h) I% ~" i5 o6 f
用戶選用ARM處理器開發嵌入式系統時,選擇合適的開發工具可以加快開發進度,節省開發成本。因此一套含有編輯軟體、編譯軟體、彙編軟體、鏈結軟體、調試軟體、工程管理及函數庫的集成開發環境(IDE)一般來說是必不可少的,至於嵌入式即時操作系統、評估板等其他開發工具則可以根據應用軟體規模和開發計畫選用。2 b8 J4 X) n+ _# n' v* I
; B4 V. U1 `+ v, \9 I, d5 y) L
使用集成開發環境開發基於ARM的應用軟體,包括編輯、編譯、彙編、鏈結等工作全部在PC機上即可完成,調試工作則需要配合其他的模組或產品方可完成,目前常見的調試方法有以下幾種:
( W! @! k$ k) s5 `7 p
* C' N1 o$ l5 n% h9 C! | ~" l9 Q1、指令集模擬器
# D9 t0 w# E4 O2 G部分集成開發環境提供了指令集模擬器,可方便用戶在PC機上完成一部分簡單的調試工作,但是由於指令集模擬器與真實的硬體環境相差很大,因此即使用戶使用指令集模擬器調試通過的程式也有可能無法在真實的硬體環境下運行,用戶最終必須在硬體平臺上完成整個應用的開發。
: w( @+ e+ p1 H( _# n1 o$ D& F7 |5 N. A- o; Q+ z0 l9 r
2、駐留監控軟體
- _: X: |) d* g駐留監控軟體(Resident Monitors)是一段運行在目標板上的程式,集成開發環境中的調試軟體通過乙太網口、平行埠、序列埠等通訊埠與駐留監控軟體進行交互,由調試軟體發佈命令通知駐留監控軟體控制程式的執行、讀寫記憶體、讀寫寄存器、設置中斷點等。) Y$ |% M! z8 _4 x0 B; F3 L$ q
駐留監控軟體是一種比較低廉有效的調試方式,不需要任何其他的硬體調試和仿真設備。ARM公司的Angel就是該類軟體,大部分嵌入式即時操作系統也是採用該類軟體進行調試,不同的是在嵌入式即時操作系統中,駐留監控軟體是作為作業系統的一個任務存在的。! ?3 V) Z% m U* O, _
駐留監控軟體的不便之處在於它對硬體設備的要求比較高,一般在硬體穩定之後才能進行應用軟體的開發,同時它佔用目標板上的一部分資源,而且不能對程式的全速運行進行完全仿真,所以對一些要求嚴格的情況不是很適合。
, x6 J% O4 `* l# G, P) x& h4 @" E
3、JTAG模擬器) _ J" }0 v1 |1 [4 Z% M
JTAG模擬器也稱為JTAG調試器,是通過ARM晶片的JTAG邊界掃描口進行調試的設備。JTAG模擬器比較便宜,連接比較方便,通過現有的JTAG邊界掃描口與 ARM CPU 核通信,屬於完全非插入式(即不使用片上資源)調試,它無需目標記憶體,不佔用目標系統的任何埠,而這些是駐留監控軟體所必需的。另外,由於JTAG調試的目的程式是在目標板上執行,仿真更接近於目標硬體,因此,許多介面問題,如高頻操作限制、AC和DC參數不匹配,電線長度的限制等被最小化了。使用集成開發環境配合JTAG模擬器進行開發是目前採用最多的一種調試方式。1 x$ E7 H- F# b. `% p z
8 o7 z5 m8 \) C) B v) h4、線上模擬器
, E% V6 \8 s, ?, Z# m線上模擬器使用仿真頭完全取代目標板上的CPU,可以完全仿真ARM晶片的行為,提供更加深入的調試功能。但這類模擬器為了能夠全速仿真時鐘速度高於100MHz的處理器,通常必須採用極其複雜的設計和工藝,因而其價格比較昂貴。線上模擬器通常用在ARM的硬體開發中,在軟體的開發中較少使用,其價格高昂也是線上模擬器難以普及的因素。 |
|