一個(gè)典型的嵌入式系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)
在計(jì)算機(jī)、互聯(lián)網(wǎng)和通信技術(shù)高速發(fā)展的同時(shí),嵌入式系統(tǒng)開發(fā)技術(shù)也取得迅速發(fā)展,嵌入式技術(shù)應(yīng)用范圍的急劇擴(kuò)大。本文介紹了一種基于ARM和,從軟件到硬件完全自主開發(fā)多功能車輛總線(MultifunctionVehicleBus)MVB嵌入式系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。
1、嵌入式操作系統(tǒng)選擇:
*通常而言,為一個(gè)嵌入式系統(tǒng)選擇操作系統(tǒng)要考慮如下幾個(gè)因素:
*操作系統(tǒng)支持的微處理器
*操作系統(tǒng)的性能
*操作系統(tǒng)的軟件組件和設(shè)備驅(qū)動(dòng)程序
*操作系統(tǒng)的調(diào)試工具,開發(fā)環(huán)境、在線仿真器(ICE)、編譯器、匯編器、、調(diào)試器以及模擬器等等
*操作系統(tǒng)的標(biāo)準(zhǔn)兼容性
*操作系統(tǒng)的技術(shù)支持程度
*操作系統(tǒng)是提供源代碼還是目標(biāo)代碼
*操作系統(tǒng)的許可使用情況
*操作系統(tǒng)的開發(fā)者聲譽(yù)狀況
根據(jù)系統(tǒng)的需求和以上的原則,在MVB系統(tǒng)中采用了Vxworks實(shí)時(shí)操作系統(tǒng),VxWorks是風(fēng)河公司(Windriver)開發(fā)的實(shí)時(shí)操作系統(tǒng)之一,以其優(yōu)秀的可靠性、實(shí)時(shí)性及內(nèi)核的可裁減性,被廣泛應(yīng)用于通信、軍事、、航空、工業(yè)控制等關(guān)鍵行業(yè)領(lǐng)域,其開發(fā)環(huán)境為Tornado。
2、處理器的選擇:在為嵌入式系統(tǒng)選擇處理器時(shí)需要考慮以下幾個(gè)方面:
*性能:處理器必須有足夠的性能執(zhí)行任務(wù)和支持產(chǎn)品生命周期。
*工具支持:支持軟件創(chuàng)建、調(diào)試、系統(tǒng)集成、代碼調(diào)整和優(yōu)化工具對整體項(xiàng)目成功與否非常關(guān)鍵。
*操作系統(tǒng)支持:嵌入式系統(tǒng)應(yīng)用需要使用有幫助的抽象來減少其復(fù)雜性。
*開發(fā)人員過去的處理器經(jīng)驗(yàn):擁有處理器或處理器系列產(chǎn)品的開發(fā)經(jīng)驗(yàn)可以減少可觀的學(xué)習(xí)新處理器、工具和技術(shù)的時(shí)間。
*成本,功耗,產(chǎn)品上市時(shí)間,技術(shù)支持等等
在本系統(tǒng)的設(shè)計(jì)中,以上各方面的因素,考慮到處理器性能,操作系統(tǒng)支持以及列車上嚴(yán)酷的工業(yè)環(huán)境等等,在MVB系統(tǒng)中選用了用于工業(yè)控制領(lǐng)域的工業(yè)級的系列ARM處理器M40800,它是基于內(nèi)核,內(nèi)含高性能的32位處理器、16位高集成度指令集、8KB片上、可編程外部總線接口(EBI)、3通道16位計(jì)數(shù)器/器、32個(gè)可編程I/O口、中斷控制器、2個(gè)、可編程看門狗器、主時(shí)鐘電路和時(shí)序,并配有高級節(jié)能電路;同時(shí),可支持JTAG調(diào)試,主頻可達(dá)到。
3、相關(guān)外部設(shè)備的選擇:
在確定操作系統(tǒng)和處理器之后,就可以確定相關(guān)的外部設(shè)備,如,RAM,串口等等。在MVB系統(tǒng)中,MVB控制器MVBC(Multifunction Vehicle Bus )是一個(gè)MVB電路和實(shí)際的物理設(shè)備之間的接口控制器,它的主要功能是實(shí)現(xiàn)MVB總線信號與數(shù)據(jù)幀的編解碼,糾錯(cuò)等功能,是本系統(tǒng)中要實(shí)現(xiàn)的關(guān)鍵的硬件模塊。由于系統(tǒng)規(guī)模,上市時(shí)間等方面的要求,系統(tǒng)暫時(shí)不考慮實(shí)現(xiàn),因此在MVB系統(tǒng)中用來實(shí)現(xiàn)這個(gè)關(guān)鍵模塊,是最靈活和最合算的替代方案??紤]到系統(tǒng)需求與FPGA資源,成本,供貨情況等因素,最終選擇了公司的Cyclone系列FPGA,其開發(fā)工具是Quartus II。
4、MVB系統(tǒng)架構(gòu)
由以上的需求分析和選型,完整的系統(tǒng)硬件架構(gòu)和軟件架構(gòu)如圖2圖3所示。
圖2:MVB系統(tǒng)的硬件架構(gòu)。
圖3:MVB系統(tǒng)的軟件架構(gòu)。
其中,處理器和 MVBC通過Traffic (TM)進(jìn)行通訊數(shù)據(jù)交換,所有軟件和MVBC要交換的控制信息和數(shù)據(jù)都可以在TM地址空間中找到,這個(gè)地址空間對處理器和MVBC都是可訪問的。其示意圖4如下
圖4:Traffic 。