你的位置:首頁 > 互連技術(shù) > 正文

揭示32位嵌入式處理器與8位處理器的三大區(qū)別

發(fā)布時間:2015-09-22 責(zé)任編輯:susan

【導(dǎo)讀】現(xiàn)如今,32位的RISC嵌入式處理器(CPU)已成為嵌入式應(yīng)用和設(shè)計的主流。與國內(nèi)普遍應(yīng)用的8位單片機相比,32位的嵌入式CPU有很大的優(yōu)勢,它使得整個嵌入式系統(tǒng)的升級只需通過軟件的升級即可實現(xiàn)。而8位處理器通常會受到的64K軟件限制也沒有了,設(shè)計者幾乎可以任意選擇多任務(wù)操作系統(tǒng),并將應(yīng)用軟件設(shè)計得復(fù)雜龐大,真正體現(xiàn)“硬件軟件化”的設(shè)計思想。
 
什么發(fā)生了改變
 
目前,國內(nèi)熟悉8位處理器開發(fā)的工程師非常多,開發(fā)工具和手段也很豐富,并且價格較低。而32位處理器的開發(fā)與8位處理器的開發(fā)則有著許多明顯的不同。
 
第一,實時多任務(wù)操作系統(tǒng)(RTOS)引入32位嵌入式系統(tǒng)。
 
由于32位CPU的資源豐富,指令集相對龐大,而且,系統(tǒng)軟件比較復(fù)雜,所以,通常在開發(fā)時要選用相應(yīng)的RTOS來對應(yīng)用軟件中的各個任務(wù)進行調(diào)度。軟件設(shè)計工程師需要學(xué)習(xí)全新的RTOS技術(shù),掌握底層軟件、系統(tǒng)軟件和應(yīng)用軟件的設(shè)計和調(diào)試方法。這對于開發(fā)者來說是一個新的挑戰(zhàn)。
 
當(dāng)然,RTOS的引入,也將給嵌入式開發(fā)商帶來軟件的模塊化和可移植化等好處,為軟件的工程化管理做好準(zhǔn)備。
 
第二,調(diào)試的硬件接口發(fā)生改變。
 
在開發(fā)8位處理器時,通常采用在線仿真器ICE(In-Circuit-Emulator),ICE通過插座或者相應(yīng)的夾具替代CPU來進行仿真和開發(fā)工作。而對于32位嵌入式處理器來說,因其過高的時鐘頻率(50MHZ 至400MHZ以上)和復(fù)雜的封裝形式(如BGA)導(dǎo)致ICE很難勝任開發(fā)工具的工作。CPU廠商借助于邊界掃描接口(JTAG口)來提供調(diào)試信息,供開發(fā)者進行開發(fā)。
 
JTAG口通常是一個14Pin或20Pin的插座,JTAG調(diào)試器(或稱JTAG仿真器)因為可直接從CPU獲取調(diào)試信息而使得該產(chǎn)品的設(shè)計簡化,從而使得價格要低于ICE。
 
第三,系統(tǒng)的開發(fā)方式產(chǎn)生變化。
 
對于一個8位的系統(tǒng)開發(fā)來說,設(shè)計者只需按照硬件設(shè)計及調(diào)試、軟件(匯編或C語言)編程、定位引導(dǎo)、軟件調(diào)試、系統(tǒng)聯(lián)調(diào)等過程來進行即可,應(yīng)用軟件的開發(fā)通常在硬件之后,且應(yīng)用軟件包是不能通用的。
 
對于一個32位的嵌入式系統(tǒng)則不同。在硬件設(shè)計開發(fā)的同時,需要有實時多任務(wù)操作系統(tǒng)環(huán)境,軟件工程師可以同時進行應(yīng)用軟件包的開發(fā)和調(diào)試。在硬件調(diào)試結(jié)束時,應(yīng)進行BSP(板級支持包)的設(shè)計和調(diào)試。在BSP調(diào)試通過后,方可進行系統(tǒng)軟件和應(yīng)用軟件的聯(lián)調(diào)。通常應(yīng)用軟件的開發(fā)可以單獨進行。更換CPU 或硬件平臺后,應(yīng)用軟件包是通用的(要基于同樣的RTOS)。
 
那么,開發(fā)一個32位的嵌入式系統(tǒng)需要哪些工具和環(huán)境呢?
 
首先需要選擇一個合適的多任務(wù)操作系統(tǒng)。
 
目前,商用的RTOS比較多,如Linux、Nucleus、WinCE、VxWorkx等。用戶可根據(jù)系統(tǒng)的技術(shù)要求和商業(yè)要求,選擇合適的一種。
另外,要選擇相應(yīng)的編譯工具和調(diào)試環(huán)境。
 
根據(jù)所選用的RTOS和編程語言(C或C++)來確定要使用的編譯器。對于ARM系列CPU來說,比較常見的有arm公司的SDT和ADS,以及免費的GNU等。
 
許多廠商將編譯器(Compiler)、連接器(Linker)、定位器(Locater)、模擬器(Simulator)和監(jiān)控調(diào)試器(Monitor Debugger)作為一個整體提供給用戶。這通常稱為集成開發(fā)環(huán)境IDE(Integrated Development Environment)。選用IDE將給調(diào)試帶來許多方便。
 
再者,要選擇合適的JTAG仿真器。JTAG仿真器的一端通過JTAG連接電纜與目標(biāo)板相連,另一端則與主機的調(diào)試環(huán)境相連。與主機的連接方式通常有三種。一是并口方式,一是USB口方式,另一種是網(wǎng)口方式。這三種方式在代碼下載速度、連接方便性、調(diào)試資源共享性等方面均有所不同,用戶可以根據(jù)經(jīng)費、技術(shù)方案要求、主機環(huán)境等實際情況來選擇。另外,JTAG的主頻也是影響 JTAG仿真器速度的重要技術(shù)指標(biāo),越快速的JTAG仿真器,其JTAG主頻也越高。
 
與ICE開發(fā)方式相似,JTAG仿真器也提供邏輯追蹤功能,以確保硬件調(diào)試和軟硬件聯(lián)調(diào)的順利進行。該功能需要增加額外的費用,因而建議只在進行復(fù)雜的系統(tǒng)級開發(fā)項目中選購。
 
好的JTAG仿真器還應(yīng)該支持任務(wù)級調(diào)試。其調(diào)試環(huán)境除具有豐富的調(diào)試功能,良好的調(diào)試界面外,還應(yīng)該能夠“認識”各種不同類型的RTOS。這樣,用戶在進行基于RTOS的軟件調(diào)試時,能夠直接對各種任務(wù)進行操作。如果JTAG仿真器不能支持任務(wù)的調(diào)試,那么,將給軟件開發(fā)工程師帶來諸多不便,影響開發(fā)進度。
 
面對開發(fā)難點
 
32位嵌入式系統(tǒng)的開發(fā)過程中存在其特有的技術(shù)難點,因此開發(fā)者對其要有充分的心理準(zhǔn)備并做出相應(yīng)的對策。
 
BSP的開發(fā)和調(diào)試 在硬件調(diào)試完成后,就需要進行實時操作系統(tǒng)(RTOS)的移植。其中最主要的就是BSP的開發(fā)和調(diào)試。在整個嵌入式系統(tǒng)中,應(yīng)用軟件通過對系統(tǒng)軟件的調(diào)用來完成各種應(yīng)用功能。而系統(tǒng)軟件則是通過BSP來完成與硬件設(shè)備的握手連接。所以,BSP的性能將影響整個系統(tǒng)的可靠性。
 
由于操作系統(tǒng)(RTOS)廠商提供的開發(fā)環(huán)境的建立,是基于BSP的正常工作,只有在BSP工作正常后,用戶才能“看到”整個系統(tǒng)硬件資源。因此,在此之前,用戶對BSP的調(diào)試幾乎是在“盲目”中進行的。BSP的開發(fā)調(diào)試有時要花費一至兩個月甚至更長的時間。
 
解決的辦法似乎不多。一是提高工程師的水平,在CPU的掌握、目標(biāo)板硬件及周邊驅(qū)動設(shè)備的熟悉、深入了解操作系統(tǒng)(RTOS)的工作機制、系統(tǒng)的資源配置等方面加強學(xué)習(xí);另外,要選用好的JTAG仿真器或其它工具。
 
應(yīng)用軟件的并行開發(fā) 由于越來越強烈的快速上市要求,嵌入式系統(tǒng)的開發(fā)周期越來越短。這就必然要求在硬件開發(fā)的同時,能夠進行軟件的開發(fā)。一方面,用戶可以在一塊標(biāo)準(zhǔn)的評估板上來開發(fā)一部分軟件,待實際目標(biāo)板硬件和BSP完成后,再進行系統(tǒng)級的調(diào)試和開發(fā)。另一方面,用戶可以借助實時操作系統(tǒng)(RTOS)廠商提供的虛擬環(huán)境來進行軟件開發(fā)調(diào)試,要開發(fā)和調(diào)試的軟件幾乎不受任何限制。待實際硬件平臺完成后,只須重新編譯連接,即可下載到目標(biāo)上運行。注意在選用RTOS時,增加該工具環(huán)境。


小編推薦閱讀:
我愛快包——電子工程師的外快錢包
要采購仿真器么,點這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉