<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 嵌入式工程師經(jīng)驗常識分享

          嵌入式工程師經(jīng)驗常識分享

          作者: 時間:2013-02-22 來源:網(wǎng)絡 收藏

          本文將從技術(shù)和就業(yè)等角度為即將進入開發(fā)的們,詳細講述了的概念,開發(fā)之間的異同以及應該如何做出選擇。以下都是前輩的一些之談,希望對大家有所幫助。

          本文引用地址:http://www.ex-cimer.com/article/148097.htm

          第一.眼中的“嵌入式系統(tǒng)”

          看來:著重理解“嵌入”的概念,主要從三個方面上來理解。

          1.從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,比如早期基于X86體系結(jié)構(gòu)下的計算機,CPU只是有運算器和累加器的功能,一切芯片 要靠外部橋路來擴展實現(xiàn),象串口之類的都是靠外部的16C550/2的串口控制器芯片實現(xiàn)。目前的這種串口控制器芯片早已集成到CPU內(nèi)部,還有PC機有 顯卡,而多數(shù)嵌入式處理器都帶有LCD控制器,但其種意義上就相當于顯卡。比較高端的ARM類Intel Xscale架構(gòu)下的IXP網(wǎng)絡處理器CPU內(nèi)部集成PCI控制器(可配成支持4個PCI從設備或配成自身為CPI從設備);還集成3個NPE網(wǎng)絡處理器 引擎,其中兩個對應于兩個MAC地址, 可用于網(wǎng)關(guān)交換用,而另外一個NPE網(wǎng)絡處理器引擎支持DSL,只要外面再加個PHY芯片即可以實現(xiàn)DSL上網(wǎng)功能。IXP系列最高主頻可以達到 1.8G,支持2G內(nèi)存,1G×10或10G×1的以太網(wǎng)口或Febre channel的光通道。IXP系列應該是目標基于ARM體系統(tǒng)結(jié)構(gòu)下由 intel進行整合后成Xscale內(nèi)核的最高的處理器了。

          2、從軟件上前,就是在定制操作系統(tǒng)內(nèi)核里將應用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時所選擇的應用程序組 件就是完成了軟件的“嵌入”,比如WinCE在內(nèi)核定制時,會有相應選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇 了,在CE啟動后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。

          3、把軟件內(nèi)核或應用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺中的ROM中就實現(xiàn)了一個真正的“嵌入”。

          以上的定義是我在6、7年前給嵌入式系統(tǒng)下自話側(cè)重于理解型的定義,書上的定義也有很多,但在這個領(lǐng)域范圍內(nèi),誰都不敢說自己的定義是十分確切的,包括那些專家學者們,因為畢竟嵌入式系統(tǒng)是計算機范疇下的一門綜合性學科。

          二.嵌入式系統(tǒng)的分層及對口專業(yè)要求

          嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動層、操作系統(tǒng)層和應用層。

          1.硬件層:是整個嵌入式系統(tǒng)的根本。如果現(xiàn)在單片機及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對容易,硬件 層也是驅(qū)動層的基礎(chǔ),一個優(yōu)秀的驅(qū)動工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設計的,同時還要對操作系統(tǒng)內(nèi)核及其調(diào)度性相當?shù)氖煜さ?。?硬件平臺是基礎(chǔ),增值還要靠軟件。

          硬件層比較適合于電子、通信、自動化、機電一體、信息工程類專業(yè)的人來搞。需要掌握的專業(yè)基礎(chǔ)知識,有:單片機原理及接口技術(shù)、微機原理及接口技術(shù)、C語言等。

          2.驅(qū)動層:這部分相對而言比較難。驅(qū)動工程師不僅要能看懂電路圖,還要能對操作系統(tǒng)內(nèi)核十分的精通,以便其所寫的驅(qū)動程序在系統(tǒng)調(diào)用時,不會獨占操 作系統(tǒng)時間片,而導至其它任務不能動行。若不懂操作系統(tǒng)內(nèi)核架構(gòu)和實時調(diào)度性、沒有良好的驅(qū)動編寫風格、按大多數(shù)書上所說添加的驅(qū)動的方式,這樣可能連個 初級的驅(qū)動工程師的水平都達不到,這樣所寫的驅(qū)動在應用調(diào)用時就如同windows下我們打開一個程序運行后,再打開一個程序時,要不就是中斷以前的程 序,要不就是等上一會才能運行后來打開的程序。想做個好的驅(qū)動人員沒有三、四年功底,操作系統(tǒng)內(nèi)核不研究上幾遍,不是太容易成功的,但其工資在嵌入式系統(tǒng) 四層中可是最高的。

          驅(qū)動層比較適合于電子、通信、自動化、機電一體、信息工程類專業(yè)尤其是計算機偏體系結(jié)構(gòu)類專業(yè)的人來搞。當然除硬件層所具備的基礎(chǔ)學科外,還要對數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通。

          3.操作系統(tǒng)層:對于操作系統(tǒng)層而言目前可能只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū) 動工程師來完成。操作系統(tǒng)是負責系統(tǒng)任務的調(diào)試、磁盤和文件的管理,而嵌入式系統(tǒng)的實時性十分重要。據(jù)說,XP操作系統(tǒng)是微軟投入300人用兩年時間才搞 定的,總時工時是600人/年;中科院軟件所自己的女媧Hopen操作系統(tǒng)估計也得花遇幾百人/年才能搞定。因此這部分工作相對來講沒有太大意義。

          4.應用層:相對來講較為容易。如果會在windows下如何進行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應的變化而已。如果涉及Jave 方面的編程也是如此的。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫、基于嵌入式 系統(tǒng)的網(wǎng)絡編程和基于某此應用層面的協(xié)議應用開發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復雜,并且有難度了。

          三.目標與定位

          先有目標,再去定位。

          學ARM,從硬件上講,一方面就是學習接口電路設計,另一方面就是學習匯編和C語言的板級編程。如果從軟件上講,就是要學習基于ARM處理器的操作系 統(tǒng)層面的驅(qū)動和移植了。這些對于初學者來說必須明確,要么從硬件著手開始學,要么從操作系統(tǒng)的熟悉到應用開始學,但不管學什么,只要不是純的操作系統(tǒng)級以 上基于API的應用層的編程,硬件的寄存器類的東西還是要能看懂的、基于板級的匯編和C編程還是要會的。因此針對于嵌入式系統(tǒng)的硬件層和驅(qū)動層的人來 說,ARM的接口電路設計、ARM的C語言和匯編語言編程及調(diào)試開發(fā)環(huán)境還是需要掌握的。

          對于初學者必然要把握住方向,自己的目標是什么,自己要在哪一層面上走。然后再著手學習才比較好,與ARM相關(guān)的嵌入式系統(tǒng)的較為實際的兩個層面硬件層和驅(qū)動層,不管學好了那一層都會很有前途的。

          如果想從嵌入式系統(tǒng)的應用層面的走的話,可能與ARM及其它體系相去較遠,要著重研究基嵌入式操作系統(tǒng)的環(huán)境應用與相應開發(fā)工具鏈,比如WinCe操 作系統(tǒng)下的EVC應用開發(fā) (與windows下的VC相類似),如果想再有突破就往某些音視頻類的協(xié)議上靠,比如VOIP領(lǐng)域的基于SIP或H.323協(xié)議的應用層開發(fā),或是基于 嵌入式網(wǎng)絡數(shù)據(jù)庫的開發(fā)等等。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();