找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10582|回復: 0
打印 上一主題 下一主題
收起左側

我對嵌入式系統(tǒng)領域內(nèi)的一些東西基本理解

[復制鏈接]
跳轉到指定樓層
樓主
ID:71259 發(fā)表于 2014-12-30 22:54 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
還是抽不出時間靜下心來寫一篇技術方面的東西,總不能讓空間閑得發(fā)霉,今天就找點兒話題“嵌入式系統(tǒng)”閑扯幾句。
由于目前我也只是一個菜鳥,對專業(yè)知識的掌握還不夠完善。加上本人的語文水平很爛(自打上學那會兒,語文成績一直是處于及格水平),寫起文章來措辭用句不免有些錯誤,所以,還請“大蝦”們不要扔板磚,覺得文章不錯的話,就順便頂一個哈。。。
什么是“嵌入式系統(tǒng)”?這個問題看上去很模糊,很抽象,很難回答。對,沒錯,它就是一個比較抽象的沒有一個統(tǒng)一標準定義的事物。從字面意思上看上去有2個內(nèi)容構成,即“嵌入式”和“系統(tǒng)”!跋到y(tǒng)”給人的第一感覺應該是一個很大的東西。其實,在嵌入式系統(tǒng)領域內(nèi),它可以很大,也可以很小。而“嵌入式”從字面意思理解貌似是嵌入到某個東西里面。對,它就是嵌入到一個設備或裝備里面的。一般的定義就是:用于控制、監(jiān)視或者輔助操作機器和設備的裝置。這樣,我們就可以理解“嵌入式系統(tǒng)”就是一個用來控制、監(jiān)視或者輔助操作的一個系統(tǒng)。當然,它包括軟件系統(tǒng)和硬件系統(tǒng)。目前,國內(nèi)普遍認同的嵌入式系統(tǒng)的定義為:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積和功耗等等嚴格要求的專用計算機系統(tǒng)。呵呵,說了這么一大溜,都是廢話。說白了,嵌入式系統(tǒng)就是一個計算機系統(tǒng),只不過跟我們?nèi)粘I钪兴玫挠嬎銠C系統(tǒng)不一樣罷了。它的軟硬件要遠比通用計算機系統(tǒng)小,可是它對穩(wěn)定性和可靠性的要求卻遠比通用計算機系統(tǒng)高。舉個例子,你的通用計算機系統(tǒng)容易中病毒,而嵌入式系統(tǒng)就沒有中毒的現(xiàn)象,它的可靠性是非常高的。硬件方面,它也有如同我們?nèi)粘I钪兴玫挠嬎銠C里面的CPU,只不過這種CPU的性能不如通用計算機里面的CPU性能高而已。軟件方面,它可以沒有操作系統(tǒng),也可以搭載操作系統(tǒng)。程序源代碼一般都是用C語言編寫的,包括操作系統(tǒng)的源代碼。
在當代生活中,嵌入式系統(tǒng)的應用越來越多?梢哉f,從你出生的那一刻起,到你生命的最后一刻,嵌入式系統(tǒng)無時無刻不都在你的身邊并且深深地影響著你的生活。例如,你打電話使用的iPhone,你玩游戲使用的iPAD,你看電視節(jié)目使用的電視機數(shù)字機頂盒和電視機,你上網(wǎng)使用的路由器或者Modem,你出門所駕駛和乘坐的交通工具,你烹飪時所使用的電磁爐和微波爐,你生活中使用的洗衣機、空調(diào)、冰箱等等,還有工廠里面自動化生產(chǎn)的機器設備以及醫(yī)院里面的醫(yī)療儀等等等等。可以說,你所看到的任何事物都是嵌入式系統(tǒng)應用的典型代表。所以說,嵌入式系統(tǒng)無時無刻不影響并改善你的生活,就像我的QQ簽名所說的一樣:嵌入式,讓生活更美好。。。
在嵌入式系統(tǒng)里面,我不得不表一表一個極其重要的成員,它就是“單片機”。單片機是啥玩意兒,其實也就是塊芯片而已。我從2009年第一次接觸單片機,至今已經(jīng)快4年了。通常我們大家都有1個模糊的概念,都會問:“單片機系統(tǒng)是不是嵌入式系統(tǒng)呢?”O(jiān)f Course!!!只不過呢,我們現(xiàn)在把它看成一個低端的嵌入式系統(tǒng)。(不過現(xiàn)在ARM內(nèi)核的32位單片機可已經(jīng)不低端了哦!真要是和一般的ARM9火拼起來,鹿死誰手還說不定呢!這些高端的單片機干起活來,那也是崗崗滴。。。)所以可以這么說,單片機系統(tǒng)一定是屬于嵌入式系統(tǒng),但是嵌入式系統(tǒng)不一定指單片機系統(tǒng)。高端的嵌入式系統(tǒng)一般指的是像“ARM+Linux”這樣結構的系統(tǒng),它側重在軟件上面搭載操作系統(tǒng),在操作系統(tǒng)上面還搭載一些應用程序。這樣,整個系統(tǒng)設備運行更可靠更智能化。說了這么多,似乎有點抽象。舉個例子你就明白了。你買了一款智能手機,像現(xiàn)在的智能手機里面一般都會搭載Android操作系統(tǒng),這個便是操作系統(tǒng)層。然后應用程序層就是你的這款手機上安裝了像騰訊QQ,搜狗輸入法,憤怒的小鳥這些應用軟件之類的。這樣,你手里拿的便是一個高端的嵌入式系統(tǒng)的典型應用案例。
     嵌入式系統(tǒng)里面還有一個更加重要的成員,它就是“ARM”!癆RM”是什么?它的英語原文意思我想不用我說大家都知道它是“手臂,胳膊”的意思。在嵌入式系統(tǒng)里,它是英國的一家電子半導體微處理器的著名企業(yè),公司總部在英國劍橋。ARM公司是專門從事基于RISC技術芯片設計開發(fā)的公司,它只作為知識產(chǎn)權的供應商,本身卻不直接從事芯片的生產(chǎn),靠轉讓設計許可由各家半導體設計公司設計各具自身特色的處理器芯片。目前,世界上各大著名的半導體生產(chǎn)廠商已經(jīng)從ARM公司購買了其設計的ARM微處理器核,根據(jù)各自不同的應用領域,加入適當?shù)耐鈬娐,從而形成了自己的ARM微處理器芯片進入市場。目前,世界著名的半導體廠商ATMEL,NXP,TI,F(xiàn)REESCALE,ST都有了自己的ARM微處理器,其市場呈現(xiàn)出“百花齊放,百家爭鳴”的狀態(tài)。
     那么,ARM微處理器有哪些種類呢?其實,按照ARM內(nèi)核來分,原來ARM公司走的路線是這樣的:最開始,ARM公司設計的ARM7內(nèi)核是當時主流的嵌入式處理器,該內(nèi)核是三級流水線和馮·諾依曼架構,我們大家常用的51單片機也是馮·諾依曼架構,好有親切感,哈哈哈。。。因為其處理速度只有0.9MIPS/MHz,處理能力非常有限,后來就誕生了ARM9。該內(nèi)核是5級流水線,提供1.1MIPS/MHz的哈佛總線架構,其處理性能明顯大大提升。ARM9主要包括ARM9TDMI和ARM9EJ-S等內(nèi)核,而ARM7內(nèi)核典型代表就是ARM7TDMI。其實ARM9不僅僅是在處理性能上面比ARM7上一個檔次,更重要的是其內(nèi)部硬件比ARM7更加復雜,支持更多一種指令集技術。最最重要的一點,從ARM9開始,其微處理器開始能夠支持加載大型的操作系統(tǒng),如LINUX,Windows CE,Vxworks,Android等等,這4中操作系統(tǒng)是當今嵌入式領域內(nèi)最為歡迎的幾種。首先,Linux是一種自由和開放源碼的類Unix操作系統(tǒng),其最大的特點就是源碼開放,所以它是目前在搞嵌入式技術開發(fā)的工程師們當中很受歡迎的一種操作系統(tǒng)。Windows CE操作系統(tǒng)是微軟公司的,它很變態(tài),源碼不開放,這的確讓人很蛋疼,使得想學習它的人可能比較困難。但是,它為什么還有如此好的市場空間呢?為什么還能在如此眾多實時操作系統(tǒng)的市場上站住腳呢?其實很簡單,原因就在于它的一個特色和靚點:界面非常友好。。。它提供了非常友好的圖形化界面,就如同我們?nèi)粘I钏玫碾娔X一樣,操作簡單。就憑這一點,它就能稱霸一方,呵呵。。。其實,Windows CE操作系統(tǒng)很像我們以前使用的Windows 98操作系統(tǒng)一樣,大家想想就應該知道了。就是因為這一點,Windows CE操作系統(tǒng)在目前汽車電子領域內(nèi)應用的最多,最主要的就是汽車的車載導航系統(tǒng)。
         等下,喝口水,嘴巴都講干了呵呵。。。接下來,我們聊一聊Vxworks。這款嵌入式實時操作系統(tǒng)在民用領域比較少。它是美國溫瑞尓公司于1983年設計開發(fā)的。其良好的可靠性和實時性被廣泛的應用在軍事,航空,航天等高精尖技術及實時性要求極高的領域中,如衛(wèi)星通訊,軍事演習,彈道制導,飛機導航等等。Android是一種以Linux為基礎的開放源碼的操作系統(tǒng),主要用在便攜式設備上。如目前在智能手機和平板電腦上使用的最為廣泛,當然,其也可以使用在嵌入式平臺上面。目前尚沒有統(tǒng)一的中文名稱,在中國大陸普遍稱為“安卓”,“安致”。它是由谷歌于2008年9月份開發(fā)的,最主要的應用領域還是在消費領域內(nèi)電子設備上面。
         以上廢話了許多,主要講了一下在嵌入式開發(fā)上面的一些操作系統(tǒng),有點跑題哈。。。
有了ARM9以后,在一般的應用場合都能夠勝任,都能見到它的身影。然而,在消費類領域特別是在音視頻處理領域內(nèi),ARM9還是不能很好的勝任它的。如果要用一款ARM9來播放一端視頻文件,它會卡死極其嚴重,數(shù)據(jù)吞吐量完全吃不消。所以,就在這種背景下,ARM公司后來又開發(fā)出了ARM11內(nèi)核。ARM11系列主要有ARM1136J,ARM1156T2和ARM1176JZ三種內(nèi)核型號,分別針對不同的領域。ARM11是基于ARMv6架構的專門為新一代消費類電子、無線設備、網(wǎng)絡應用和汽車電子產(chǎn)品需求而制定的。ARM11的媒體處理能力和低功耗特點,特別適用于無線和消費類電子產(chǎn)品。大家都有這樣的一種經(jīng)歷,平常用手機的時候,非常希望自己的手機待機或者續(xù)航能力持久,然而往往卻很難達到要求。其實,這就是要求電子產(chǎn)品和設備的低功耗能力要超強。并且,ARM11的高數(shù)據(jù)吞吐量和高性能的結合非常適合網(wǎng)絡處理應用。
         按照ARM公司以往走得路線來看,ARM11時代過了以后,ARM公司應該繼續(xù)開發(fā)出ARM13,ARM15甚至更高的處理器內(nèi)核。但是,ARM公司從ARM11以后就沒有走原來的路線了。據(jù)有些人說,ARM公司畢竟是西方國家的,13這個數(shù)字對西方國家來說是個很不好的數(shù)字,就如中國人不喜歡4這個數(shù)字一樣。所以,后來ARM公司開發(fā)出了新的內(nèi)核,它有3種,分別如下:ARM Cortex-A系列,ARM Cortex-R系列,ARM Cortex-M系列。很有意思的是,這三個系列正好拼在一起就是“ARM”,哈哈,有意思吧。。。
   其中,A是英文Application的縮寫,它是應用的意思,意思就是ARM Cortex-A系列的處理器目標市場就是高端設備的應用場合,如現(xiàn)在的很多手機,平板電腦就是該系列的處理器,像蘋果的iPhone就是A5處理器啊。R是英文Realtime的縮寫,它是實時的意思,意思就是ARM Cortex-R系列的處理器目標市場就是一些對實時性能要求較高的場合,如軍事,航空,航天領域最為典型。M是英文Microcontroller的縮寫,它是微控制器的意思,也就是單片機,哈哈,我們大家都很熟悉并且津津樂道的玩意兒。對,ARM Cortex-M系列目標市場就是單片機市場,不用多說,你懂的。。。嘿嘿。。。
         現(xiàn)在,常常有些朋友總是問道我這樣的問題:你用的ARM到底是ARM9還是ARM11?你用ARM9干嘛不用ARM11啊?每當被問及這個問題,我只能很無語,我不知所云。大家伙總是一味的追求高端,總是以為追求高端就很NB,其實大錯特錯。并且,大家伙貌似對ARM的認識和了解也就只知道ARM9和AMR11,卻不知道還有其它系列就妄下結論選型,這點我不得不一笑回之。要知道,在嵌入式技術開發(fā)這一領域內(nèi),對設備的穩(wěn)定性,可靠性和成本有著極其苛刻的要求。對于一個低端的應用,你硬是搞個非常高端的芯片來使用,那純屬是浪費,就如你殺雞硬是用宰牛刀一樣,典型的就是2B一個。。。
         目前,我正在使用的是飛思卡爾半導體公司于2011年下半年剛推出的一款基于ARM Cortex-M4內(nèi)核的微控制器。這款芯片功能非常強大,也是目前M系列內(nèi)最新的一款控制器,資料較少,上手難度較大。但我相信,這款芯片在未來肯定有非常大的市場前景,I Belive In。。。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表