選擇合適的嵌入式系統(tǒng)軟、硬件調(diào)試工具
——
嵌入式系統(tǒng)需要兩種調(diào)試形式,其中一種基于軟件,另一種則以硬件為中心。而且,業(yè)界在這兩方面都已經(jīng)做了大量標(biāo)準(zhǔn)化工作。其中,基于軟件的調(diào)試正在轉(zhuǎn)向一種基于Eclipse框架的開放式系統(tǒng)方法。大多數(shù)軟件開發(fā)工具公司現(xiàn)在都有相應(yīng)的插件,使其調(diào)試工具成為Eclipse集成開發(fā)環(huán)境(IDE)的一部分。例如,由于Altium公司的TaskingVX工具集允許內(nèi)部集成在Eclipse平臺中,以支持更多的工具配置選項。嵌入式工具公司也在加入到Eclipse基金會中來,從而有助于確保嵌入式工具能在未來Eclipse平臺的進一步開發(fā)中扮演重要的角色。
這些工具插件的普及正在幫助催生Eclipse的標(biāo)準(zhǔn)化擴展途徑,使原本針對企業(yè)級軟件開發(fā)而創(chuàng)建的Eclipse平臺如今也包含了嵌入式和器件級軟件。這其中的一個倡導(dǎo)項目,便是由風(fēng)河系統(tǒng)公司牽頭的器件軟件開發(fā)平臺(DSDP),該平臺涵蓋了嵌入式系統(tǒng)的大量特定硬件要求。
DSDP倡導(dǎo)組織正在努力克服Eclipse處理調(diào)試方式的嚴(yán)苛性問題。原來的Eclipse(3.1版以前)接口具有“target-process-thread”堆棧幀層次,當(dāng)調(diào)試視圖改變時會跟著改變調(diào)試的相關(guān)內(nèi)容。而DSDP組織則提供了可自適應(yīng)的接口層,如用作瀏覽器和調(diào)試模型之間的橋的內(nèi)容適配器,因此允許內(nèi)容定制和模型驅(qū)動的內(nèi)容瀏覽。這種方法還支持針對目標(biāo)硬件的特殊配置實現(xiàn)調(diào)試器的定制。朝著實現(xiàn)這種方法邁出的第一步出現(xiàn)在2006年中期發(fā)布的Eclipse(3.2版)中,并且仍在不斷得到修正。
JTAG主導(dǎo)處理器探測
在硬件調(diào)試方面,通過在線仿真(ICE)以及類似的工具來查看處理器內(nèi)部的方法,正在從用外綁定處理器的定制探測轉(zhuǎn)向內(nèi)置調(diào)試。目前可以訪問這種內(nèi)置功能的標(biāo)準(zhǔn)接口是IEEE標(biāo)準(zhǔn)1149.1所定義的JTAG接口。JTAG的初衷是使用每個芯片內(nèi)部的硬件資源檢查高密度PCB上的連接完整性。如今,JTAG可以用作以追蹤內(nèi)置軟件、讀取內(nèi)部處理器寄存器的訪問端口,甚至用于存儲器和可配置邏輯的板上編程。
將JTAG用于硬件調(diào)試的其中一個新興趨勢是通過單個接口同時控制多個器件的能力。JTAG的定義允許器件以菊花鏈的結(jié)構(gòu)鏈接在一起,因此單個控制器可以訪問電路板上的所有器件。而在嵌入式開發(fā)中,工具供應(yīng)商最早是將JTAG接口用于單器件訪問—也就是訪問處理器。
然而,現(xiàn)代系統(tǒng)設(shè)計通常要使用兩個以上的處理器,因此開發(fā)人員需要將單獨的工具連接到每個處理器,然后獨立地調(diào)試每個器件。硬件工具的因應(yīng)措施是逐漸能夠使用調(diào)試器探測菊花鏈處理器,并對它們同時實施控制以獲得更協(xié)調(diào)的調(diào)試效果。另外,探測器逐漸能夠通過處理器的JTAG接口訪問其它硬件,如存儲器。
Macraigor系統(tǒng)公司的OCDemon系列探測器就是近期涌現(xiàn)出來的這類多功能JTAG探測的一個例子。器件通過支持軟件的配置可以控制目標(biāo)處理器,從而提供了對處理器操作和寄存器訪問的控制。
此外,它還能控制與目標(biāo)處理器連接的閃存。這種功能允許開發(fā)人員用單個器件和連接來加載軟件,并測試它的執(zhí)行情況,從而提高反復(fù)調(diào)試的速度。
然而,由于有潛力改變嵌入式系統(tǒng)調(diào)試實現(xiàn)的地點和方式,硬件調(diào)試的下一步發(fā)展將不僅是這類簡單的功能擴展。當(dāng)JTAG硬件調(diào)試象其它各種數(shù)據(jù)傳送方式那樣采用無線連接時,這將成為事實。到處理器的JTAG連接已經(jīng)從并行端口轉(zhuǎn)向USB,因此再從USB轉(zhuǎn)到無線USB或其它無線形式只需一小步即可。
硬件調(diào)試連接無線化所提供的優(yōu)勢不言而喻:簡化訪問連接,并且無須使用線纜,還給現(xiàn)場系統(tǒng)維護和升級提供了新的可能性。通過JTAG接口已經(jīng)可以使用硬件調(diào)試和存儲器編程的全部功能。而使連接無線化,將允許已部署系統(tǒng)中這些功能的性能隨時得以充分發(fā)揮。
根據(jù)所實現(xiàn)的無線鏈路類型,嵌入式系統(tǒng)設(shè)計可以通過筆記本電腦實現(xiàn)現(xiàn)場調(diào)試和維護,或者甚至通過與互聯(lián)網(wǎng)的Wi-Fi連接實現(xiàn)遠(yuǎn)程操作。這樣就擴展了維護方式,并且開啟多種應(yīng)用可能性,如收集事件統(tǒng)計數(shù)據(jù)用于故障分析,或確定應(yīng)用模式以改進設(shè)計。
評論