ARM嵌入式系統(tǒng)的問題分析與總結(jié)
本文引用地址:http://2s4d.com/article/148366.htm
就目前的發(fā)展看,由于ARM等32位處理器應用漸成主流,開發(fā)工具已較完善、成熟,對于普通高校計算機學科的嵌入式系統(tǒng)教學,筆者認為可以定位在以32位嵌入式系統(tǒng)開發(fā)為主,重點是嵌入式系統(tǒng)的軟硬件結(jié)構(gòu)、嵌入式OS的知識,以及嵌入式軟件設計(包括優(yōu)化)。課程主體內(nèi)容基本與硬件平臺(處理器型號)無關,實驗可以采用基于ARM核的不同廠家處理器的實驗平臺。主要考慮以下幾點:
①在32位嵌入式系統(tǒng)開發(fā)上,軟件開發(fā)人員的需求比硬件開發(fā)人員要多得多(盡管目前硬件開發(fā)人員較難找,但這應該是電子等專業(yè)培養(yǎng)的)。一般在一個從事嵌入式應用系統(tǒng)開發(fā)的公司中,軟硬件人員的比例不會小于10:1。由于學習時間有限,教學重點應該偏軟件。
②現(xiàn)代社會強調(diào)分工、合作,以求得整體利益的最大化。對個人的要求首先是專才,能把局部工作做精、做好。通才是需要的,但數(shù)量會比專才少得多,而且通才是練出來的,不是教出來的。今后的大學是大眾教育,教學只能面向大眾需求。在相關專業(yè)的研究生階段,對一些有基礎、有興趣的學生,可以進行一些系統(tǒng)級硬件、底層軟件的開發(fā)實踐,同時也可滿足社會對高層次嵌入式人才的需要。
③以此為主,可以再開設2門選修課。向下為“單片機原理與應用”,此課程以實踐為主,讓有興趣的學生可以自己設計、制作一些單片機應用系統(tǒng),同時也鍛煉了硬件動手能力。向上為“數(shù)字信號處理(DSP)”,讓那些數(shù)學基礎較好、對實時信號處理有興趣的學生有用武之地(現(xiàn)在這樣的學生很難得)。
另外,由于應用日趨復雜,而教學時間有限,一個本科生在校期間不可能深入學習嵌入式系統(tǒng)的很多細節(jié),嵌入式教學應采用自上而下的教學方法。一開始不必花很多時間講解處理器內(nèi)核架構(gòu)/指令系統(tǒng),只要知道各種內(nèi)核的基本特點即可,重點學習、掌握處理器、外設的編程結(jié)構(gòu)(即編程者角度看到的編程模型結(jié)構(gòu),非具體物理實現(xiàn)結(jié)構(gòu))。真實的應用、研究設計都是從粗粒度向細粒度進階的,是一個自頂向下的過程,首先要重視的是系統(tǒng)架構(gòu)和各個抽象層。1000行的C程序,編譯后生成的目標代碼只有10 KB左右,試想現(xiàn)在的MCU Flash動輒幾百KB,為什么?一個目標代碼幾百KB的C程序,一般不是完全由個人寫出來的,而都會使用一些第三方的庫函數(shù)、中間件等。硬件也一樣,現(xiàn)在很多硬件系統(tǒng)都會使用一些模塊(Module),盡管這些模塊看上去還是一個芯片,但實際上已經(jīng)是一個SiP模塊,如WiFi模塊。所以,在了解基本嵌入式系統(tǒng)結(jié)構(gòu)的基礎上,本科階段要更多地學習各種系統(tǒng)、模塊、外設、協(xié)議、庫函數(shù)的“邊界(Interface)”,能夠搭建一個簡單系統(tǒng)(How to do),今后在工作、或研究生階段進一步去做好一個系統(tǒng)(How to do better)。
5結(jié)語
嵌入式系統(tǒng)作為一種特殊的計算機應用系統(tǒng),在任何時期都有相對的高、中、低端應用,即使在今后,沒有OS支持的4位或8位單片機的嵌入式應用仍有大量需求,但趨勢是系統(tǒng)化、復雜化。這既是嵌入式系統(tǒng)的特點--廣泛性、差異性和不可壟斷性,也是廣大嵌入系統(tǒng)研發(fā)人員的生存與發(fā)展空間。ARM處理器在便攜、手持式設備以及工業(yè)控制等應用領域,在今后相當長的時間內(nèi)是一個很好的選擇。當然,沒有一種型號的處理器是可以覆蓋所有應用的,也不是搬上一個嵌入式OS,就可以很好地解決軟件問題的。深入了解各種器件特性,選擇最合適的處理器、外圍器件、操作系統(tǒng)和軟件庫,盡可能地優(yōu)化軟件設計,最貼切地滿足應用需求,以獲得最好的系統(tǒng)性價比,是嵌入式系統(tǒng)設計開發(fā)的精髓。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論