国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 6106|回復(fù): 9
打印 上一主題 下一主題

如何學(xué)習(xí)嵌入式系統(tǒng)(基于ARM平臺(tái))

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2010-7-21 14:44:20 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
如何學(xué)習(xí)嵌入式系統(tǒng)(基于ARM平臺(tái)) .rar (11 KB)
如何學(xué)習(xí)嵌入式系統(tǒng)

(基于ARM平臺(tái))

【自我學(xué)習(xí)轉(zhuǎn)載】




前言
網(wǎng)上看到眾多網(wǎng)友都問了關(guān)于嵌入式系統(tǒng)方面的很多問題,很多都可在這里找到答案,希望我的這篇文章能給他們以啟發(fā)。

一、嵌入式系統(tǒng)的概念


著重理解嵌入的概念
  
主要從三個(gè)方面上來理解。

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

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

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

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

二、嵌入式系統(tǒng)的分層與專業(yè)的分類。

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

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

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

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

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

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

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


三、目標(biāo)與定位。

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

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

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

對于初學(xué)者來講,要量力而行,不要認(rèn)為驅(qū)動(dòng)層工資高就把它當(dāng)成方向了,要結(jié)合自身特點(diǎn),嵌入式系統(tǒng)四個(gè)層面上那個(gè)層面上來講都是有高人存在,當(dāng)然高人也對應(yīng)的高工資,我是做硬件層的,以前每月工資中個(gè)人所得稅要被扣上近3千大元,當(dāng)然我一方面充當(dāng)工程師的角色,一方面充當(dāng)主管及人物的角色,兩個(gè)職位我一個(gè)人干,但上班時(shí)間就那些。硬件這方面上可能與我PK的人很少了,才讓我拿到那么多的工資。

   
四、開發(fā)系統(tǒng)選擇。

很多ARM初學(xué)者都希望有一套自己能用的系統(tǒng),但他們住住會(huì)產(chǎn)生一種錯(cuò)誤認(rèn)識(shí)就是認(rèn)為處理器版本越高、性能越高越好,就象很多人認(rèn)為ARM9ARM7好,我想對于初學(xué)者在此方面以此入門還應(yīng)該理智,開發(fā)系統(tǒng)的選擇最終要看自己往嵌入式系統(tǒng)的那個(gè)方向上走,是做驅(qū)動(dòng)開發(fā)還是應(yīng)用,還是做嵌入式系統(tǒng)硬件層設(shè)計(jì)與板級(jí)測試。如果想從操作系統(tǒng)層面或應(yīng)用層面上走,不管是驅(qū)動(dòng)還是應(yīng)用,那當(dāng)然處理器性能越高越好了,但這個(gè)東西自學(xué),有十分大的困難,不是幾個(gè)月或半年或是一年二年能搞定的事。

   
 在某種意義上請,ARM79的差別就是在某些功能指令集上豐富了些,主頻提高一些而已,就比如286386。對于用戶來講可能覺查不到什么,只能是感覺速度有些快而已。

  ARM7比較適合于那些想從硬件層面上走的人,因?yàn)?/font>ARM7系列處理器內(nèi)部帶MMU的很少,而且比較好控制,就比如S3C44B0來講,可以很容易將Cache關(guān)了,而且內(nèi)部接口寄存器很容易看明白,各種接口對于用硬件程序控制或AXD單步命令行指令都可以控制起來,基于51單片機(jī)的思想很容易能把他搞懂,就當(dāng)成個(gè)32位的單片機(jī),從而消除很多51工程師想轉(zhuǎn)為嵌入式系統(tǒng)硬件ARM開發(fā)工程師的困惑,從而不會(huì)被業(yè)界某此不是真正懂嵌入式爛公司帶到操作系統(tǒng)層面上去,讓他們望而失畏,讓業(yè)界更加缺少這方面的人才。
而嵌入式系統(tǒng)不管硬件設(shè)計(jì)還是軟件驅(qū)動(dòng)方面都是十分注重接口這部分的,選擇平臺(tái)還要考察一個(gè)處理器的外部資源,你接觸外部資源越多,越熟悉他們那你以后就業(yè)成功的機(jī)率就越高,這就是招聘時(shí)所說的有無相關(guān)技能,因?yàn)橐粋(gè)人不可能在短短幾年內(nèi)把所有的處理器都接觸一遍,而招聘單位所用的處理器就可能是我們完全沒有見過的,就拿臺(tái)灣數(shù)十家小公司(市價(jià)幾千萬)的公司生產(chǎn)的ARM類處理器,也很好用,但這些東西通用性太差,用這些處理器的公司就只能招有相關(guān)工作經(jīng)驗(yàn)的人了,那什么是相關(guān)工作經(jīng)驗(yàn),在硬件上講的是外圍接口設(shè)計(jì),在軟件上講是操作系統(tǒng)方面相關(guān)接口驅(qū)動(dòng)及應(yīng)用開發(fā)經(jīng)驗(yàn)。我從業(yè)近十年,2000ARM出現(xiàn),我一天始做ARM7,然后直接跑到了Xscale(這個(gè)板本在ARM10-11之間),一做就是五年,招人面試都不下數(shù)百人,在這些方面還是深有體會(huì)的。

因此開發(fā)系統(tǒng)的選擇,要看自己的未來從來目標(biāo)方向、要看開發(fā)板接口資源、還要看業(yè)界的通用性。

五、如何看待培訓(xùn)。

國內(nèi)嵌入式人才缺乏,國外高校的技術(shù)超前于業(yè)界公司,而國內(nèi)情況是業(yè)界公司方面的嵌入式系統(tǒng)技術(shù)要遠(yuǎn)遠(yuǎn)領(lǐng)先于高校。為架構(gòu)業(yè)界與高校溝通的橋梁,把先進(jìn)技能帶給高校學(xué)子,為學(xué)生在就業(yè)競爭中打造一張王牌,并為業(yè)界工程師快速提升實(shí)現(xiàn)自我創(chuàng)造機(jī)遇,我就這樣辭去了外企年薪20多萬的職位,做嵌入式系統(tǒng)方面的培訓(xùn)了。
對于培訓(xùn)來講,是花錢來買時(shí)間,很多工程師都喜歡自己學(xué),認(rèn)為培訓(xùn)不值,這也是有可能的,純?yōu)橘嶅X的培訓(xùn)當(dāng)然不會(huì)太有價(jià)值,但對于實(shí)力型的培訓(xùn)他們可能就虧大了,有這樣一筆帳不知他們算過沒有,如果一個(gè)一周的培訓(xùn),能帶給他們自學(xué)兩年后才能掌握的知識(shí),在培訓(xùn)完后他們用三個(gè)月到半年時(shí)間消化培訓(xùn)內(nèi)容,這樣他會(huì)省約至少一年半的時(shí)間來學(xué)其它的或重新站在另一個(gè)高度上工作,那么他將最遲一年后會(huì)拿到他兩年后水平所對應(yīng)的工資,就是在工資與水平對應(yīng)的關(guān)系上比同批人縮短一年,每月按最少1千計(jì),再減去培訓(xùn)費(fèi)用至少多1.0萬,同時(shí)也省了一年時(shí)間,不管是休閑也好,再繼續(xù)提高也好,總之是跑到了隊(duì)伍的前面了。

另一層面上講,對于新人的培訓(xùn)相當(dāng)于他們?yōu)樽约禾崆百I了份失業(yè)保險(xiǎn),有師傅會(huì)帶領(lǐng)他們?nèi)氲溃医衲晔罴贂r(shí)班里最年輕的一個(gè)學(xué)生是大二的,今年才上大三,這學(xué)期才剛學(xué)單片機(jī),但現(xiàn)在ARM方面的編程工作已經(jīng)搞得有聲有色了,再過一年多畢業(yè),他還會(huì)失業(yè)嗎?

再者通過培訓(xùn),你可以知道很多業(yè)界不為常人所知的事,同時(shí)也為自己找了個(gè)師傅,就比如說,兩個(gè)工程師分別用S3C2410PXA255來做手持設(shè)備,同樣兩人都工作四年,再出去找工作,兩人工資可能最多可相差一倍,為什么?這就是業(yè)界不為常人所知的規(guī)則,2410屬于民品,被業(yè)界用爛了,做產(chǎn)品時(shí)成本特敏感,當(dāng)然也對人才成本敏感了,PXA255intel的東西,一個(gè)255 CPU能買三個(gè)2410,一直被業(yè)界定義為貴族產(chǎn)品,用的公司都是大公司或?yàn)檐姺椒⻊?wù)的公司,不會(huì)在乎成本,只要把東西做好,一切都好說,但這方面做的人也少啊,因?yàn)殚_發(fā)系統(tǒng)貴啊。

對于說為自已找了個(gè)好師傅,我想是這樣的,因?yàn)橥?jí)工程師間存在著某此潛在的競爭關(guān)系,有很多人不愿意把自己知道的東西教給別人,這意味著他將要失業(yè),就是所說的教會(huì)徒弟,餓死師傅,但對于我們這些人就不存在這樣的關(guān)系了,我是在嵌入式系統(tǒng)平臺(tái)設(shè)計(jì)上走到了一定程序,目前在國內(nèi)這塊的技術(shù)上已經(jīng)是自己很難再突破自己,因此很多東西我對大家都是OPEN的,就比如說下面那部分關(guān)于接口設(shè)計(jì)中所提到的時(shí)序接口東西,我要是不講,卻使是高級(jí)硬件工程師我想也幾乎只有10%的人能知道吧。
沙發(fā)
發(fā)表于 2010-8-5 00:08:11 | 只看該作者
學(xué)習(xí)ing。。。
板凳
發(fā)表于 2010-8-9 01:24:05 | 只看該作者
ding
地板
發(fā)表于 2010-8-10 01:25:13 | 只看該作者
THANKS
地下室
發(fā)表于 2010-9-12 10:50:11 | 只看該作者
支持一下~~~~~~~~~~~~
6
發(fā)表于 2010-10-5 07:48:00 | 只看該作者
很有用,支持。。。
7
發(fā)表于 2010-10-21 16:47:36 | 只看該作者
先收下謝謝
8
發(fā)表于 2010-11-23 13:08:09 | 只看該作者
嵌入式永遠(yuǎn)的痛
9
發(fā)表于 2010-12-3 17:54:27 | 只看該作者
謝謝樓主!
10
發(fā)表于 2013-11-13 08:43:16 | 只看該作者
復(fù)制下來!!!!!!!!我自己好好學(xué)習(xí)!!!!!!!!!!!

謝謝.jpg (8.65 KB)

謝謝.jpg
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚欧美综合 | 这里只有久久精品 | 日韩 国产 欧美 精品 在线 | 久热福利视频 | 小彩的第一次小志弄 | 欧美性生交xxxxx久久久 | 欧美黑寡妇高清一级在线观看 | 一个人在线观看www迅雷 | 91专区| 天天操综 | 四虎影视永久免费 | 国产在线精品一区二区高清不卡 | 五月香婷婷 | 亚洲国产精品综合久久网络 | 2021久久最新国产精品 | 国内精品久久久久久久久蜜桃 | 在线播放亚洲 | 综合色天天 | h在线视频免费观看完整版 h在线视频 | 在线欧美精品国产综合五月 | 欧美日韩一级大片 | 在线国产欧美 | 在线观看一区二区三区视频 | 中文字幕日韩精品一区口 | 四虎网站最新网址 | 日本系列 1页 亚洲系列 | 四虎最新网址 | 99精品热女视频专线 | sdmua-011| 亚洲精品永久www忘忧草 | 日本免费在线观看视频 | 久久99精品国产一区二区三区 | 在线成人精品国产区免费 | 国产精品久久久免费视频 | 欧美在线视频导航 | 国产tv在线| 一本到卡二卡三卡视频 | 日本亚洲免费 | 在线观看免费视频国产 | 男女激情视频国产免费观看 | 亚洲成网站www久久九 |