2007年度調(diào)查揭開嵌入式市場的真相!
《Embedded Systems Design》進行了一次非常全面的年度市場調(diào)查。你們可能已經(jīng)知道了這個消息,因為你已經(jīng)參加了這次調(diào)查。事實上,已經(jīng)有四位讀者成為我們隨機抽簽的中獎者。
這個調(diào)查是在全球范圍內(nèi)進行的,大部分是通過電子郵件在今年年初進行的。調(diào)查被發(fā)給本刊物(美國版本和歐洲版本)和《EE Times》(《電子工程專輯》姊妹刊物)的部分訂閱者以及我們舉行的嵌入式系統(tǒng)研討會(Embedded Systems Conferences)的部分出席者,超過1,000位嵌入式系統(tǒng)設計工程師對調(diào)查進行了回復。
對于不熟悉本次調(diào)查的讀者,我們回顧一下所涉及的領域:
你的設計中包含哪些功能?
你正在同時做幾個項目?
你的團隊有多少人?
你使用的是什么類型的工具?
你曾經(jīng)選擇過哪個處理器?
你曾經(jīng)選擇過哪個操作系統(tǒng)?
我不會在這里把整個調(diào)查過一遍,但是我想分享一些我覺得特別有趣、特別麻煩和特別吸引人的部分。如果你想獲得有關整個調(diào)查的更多信息,請直接與我聯(lián)系(rnass@cmp.com)。本次調(diào)查的真正亮點在于,我們多年以來都做一個幾乎相同的調(diào)查,我們可以展現(xiàn)趨勢、演進過程和產(chǎn)品周期結(jié)束情況等。年度同比數(shù)據(jù)非常有趣。
以下就是一個值得注意的統(tǒng)計:從2005~2007年,新項目數(shù)從48%下降到39%,如圖1所示。這種下降已經(jīng)差不多全部被改進和維護的增加所抵消。這說明什么?可以說明項目太復雜,以致它們需要比過去更多維護嗎?或者這些設計比以前的模型好,因此產(chǎn)品周期更長?在我看來,這是這兩種作用結(jié)合的結(jié)果,由于生產(chǎn)一個新產(chǎn)品的成本大幅增加,因此后者更加重要。但是,很明顯,對每個新一代處理器進行編程需要更多時間,這僅僅是因為向開發(fā)工程師提供了更多功能。更多代碼意味著更多測試,因此每個設計階段都會耗費更長時間。
為了從事實上檢驗這個問題,我聯(lián)系了特約編輯Michael Barr。Barr懷疑設計工程師已經(jīng)改變了他們定義“新項目”的方式?!斑^去人們是通過如果你的項目增加了互聯(lián)網(wǎng)連接,但是仍在通過其它方式做同樣的事情,來定義新項目的。現(xiàn)在,每個想要互聯(lián)網(wǎng)連接的工程師都有新項目。因此他們將這種變化(包括應用更新)視為升級,而不是新項目?!?
升級CPU
對于那些對現(xiàn)有項目進行升級的設計工程師,56%表示他們在使用新處理器(圖2)。這是因為他們需要更多性能或者因為他們正在使用的處理器不再生產(chǎn)了嗎?我的猜測是兩者都有可能,但是多半是因為需要更多性能。CPU供應商現(xiàn)在對如何和何時廢棄處理器非常謹慎,這是系統(tǒng)開發(fā)工程師最擔心的事情之一。
正如我們在Freescale最近的公告中看到的,CPU供應商正在嘗試讓設計工程師盡可能容易地遷移至更高性能的處理器。對于Freescale而言,他們聲稱設計工程師采用其Flexis家族微控制器可以毫不費勁地從8位遷移至32位。這是一個逐漸增強性能的好例子。但是大多數(shù)情況下,只能通過轉(zhuǎn)換至新家族的器件才能實現(xiàn)性能的步進式飛躍,而不是僅僅在一個家族器件內(nèi)向上升級。
Linux
這是讓我感到驚訝的一個方面,至少直到我通過思考對以下數(shù)據(jù)作了分析:不考慮在其下一個項目中采用Linux的人數(shù)從34%上升到48%,2005年則為27%,如圖3所示。請記住,雖然采用Linux的人數(shù)相對較多,但是未采用Linux但將來會考慮采用Linux的人數(shù)卻在減少。這歸因于這樣一個事實:Linux已經(jīng)不再是新事物了。將來考慮采用Linux的較高比例的一部分群體已經(jīng)在采用Linux了。
編審委員會成員Bill Gatliff認為,我們最終會將Linux推向絕路,并認識到它并非對所有應用都合適。“對此人們變得越來越實際?!币韵率荁arr不得不說的話:“幾年以前我對Linux是如何給人以強烈印象的感覺奇怪??偸菚霈F(xiàn)一些有趣的新技術,但是它們不一定總是會被采用。但是Linux竟然成功了,許多人在電信等應用中采用Linux,以獲得像PC一樣的能力。這種趨勢無疑在繼續(xù),但是很明顯,速度已經(jīng)降下來了?!?
由于Linux不像火箭科學一樣成本高昂,因此成本是工程師們對Linux感興趣的一個主要原因(圖4)。一個令工程師們對Linux退而遠之的原因是預測和實際之間的開銷沒有完全計算在內(nèi)。雖然內(nèi)核本身可能免費或者相對便宜,但是支持成本攀升得比預期的快。并且必需第三方工具來實現(xiàn)應用特定功能,這也會增加成本。
商業(yè)操作系統(tǒng)
從總體上看商業(yè)操作系統(tǒng),其采用出現(xiàn)了顯著下降(圖5)。但是令人驚訝的是,這種下降并未被商業(yè)分布的開放源代碼操作系統(tǒng)的采用抵消。對于操作系統(tǒng)供應商而言,這是一個潛在的壞消息。
據(jù)Barr推論,這種下降是因為“對于操作系統(tǒng)技術而言,真相就在其中。每個RTOS基本上都是相同的。你需要的是將你的問題分成多個任務和獲得足夠計算能力的方法。然后你不妨采用基于優(yōu)先級的搶占式內(nèi)核。無論你是從書中或者通過附帶的免費源代碼獲得你的OS,還是免費獲得一些其它東西,這些東西全部都是一樣的。除非你需要某種驅(qū)動器可用性或者某種特殊的先進功能,否則你真的不會愿意為此而花錢?!?
這種下降是由于用戶不滿意對它們提供的支持嗎(圖6)?影響使用哪個商業(yè)操作系統(tǒng)決定的關鍵因素是質(zhì)量和技術支持的提供。這一數(shù)字從27%上升到50%,兩年內(nèi)幾乎翻了番。 [!--empirenews.page--]
語言和工具
作為編程語言,C語言在目前和未來的項目中的使用規(guī)模越來越大(圖7和圖8),大部分是以C++為代價。
為什么相對成熟的C語言的普及率在增加?據(jù)Gatliff表示,其中一個原因在于越來越多的設計被外包。“C++所需的技能比C語言所需的技術高。特別是當你考慮到在目前和下一個項目中采用Java的人僅有小幅增加的時候。我預期(并希望)采用Java的人將增加。也就是說,我不會認為8%左右的增長就意味著人們在放棄采用C++?!?
Barr對這些結(jié)果完全不感到驚訝,他表示,這是一個將延續(xù)下去的趨勢的一部分?!叭绻阒塾谀甓韧葦?shù)據(jù),你會發(fā)現(xiàn)C++并沒有多少增值。事實上它已經(jīng)消失了。即使C++的‘可重用性’可能更高,但這種特性在嵌入式領域中并不一定適用。因此許多嵌入式軟件綁定至正在實現(xiàn)的精確硬件。你可以重用你的API,但是你的代碼的內(nèi)部組成會隨項目的不同而變化。嵌入式領域的首個優(yōu)先級是系統(tǒng)正常工作。C語言在這方面做得很成功,你可以用它完成許多主要任務,特別是當安全性非常關鍵時。C++往往會引入大量變量,從而使項目變得更復雜?!?
我們提過這樣一個問題:你會在你的嵌入式設計活動中對哪一項進行改進(圖9)。第一名(是第二名2倍以上)是調(diào)試工具。從同一問題的年度同比結(jié)果中可以看到,回復“編程工具”的人數(shù)從2005年的25%下降到了2007的10%。
Gatliff表示,這個問題的分析非常簡單?!叭藗冎幌霌碛懈玫墓ぞ咧芷凇>幊坦ぞ叩南陆悼赡苁且驗镋clipse已經(jīng)開始解決人們對調(diào)試工具的一些抱怨。此外,現(xiàn)在已經(jīng)有編程工具供應商在提供能夠在Linux環(huán)境下同時進行內(nèi)核和應用調(diào)試的工具,而在我看來,這是一種了不起的能力?!?
Barr表示,“這里的關鍵在于調(diào)度,使產(chǎn)品更快面市。我對讀者尋求更好的調(diào)試器感到驚訝,這是因為調(diào)試器不會真正地幫助你設計。如果你把時間花在嘗試找出問題的調(diào)試器上,那么你就有麻煩了。我確實花時間觀察過人們在使用調(diào)試器時沒有發(fā)現(xiàn)任何情況,此時你必須做的就是推論出問題的原因,了解計算機是如何工作的。然后用調(diào)試器來確認你的猜想?!?
這里有一點讓我感到欣慰。多年來我一直在向處理器供應商倡導一切都在于工具的理念。如果你擁有世界上最好、最快、功率最低的處理器,情況不會因此而有任何不同。如果你沒有在這種處理器周圍建立正確的生態(tài)系統(tǒng),那么你將不會成功(圖10)。
外包
最近討論得比較多(特別是你們)的一個話題是外包問題,工作是在國內(nèi)做還是外包到國外。大約39%的回復者表示,他們已經(jīng)做過一個或更多部分外包或者完全外包的項目(圖11)。
外包到國外的項目是外包到國內(nèi)項目的兩倍。你可能會猜大多數(shù)項目被外包到了美國之外的哪個地區(qū)。時間到了――答案是印度(圖12)。
其它值得注意的統(tǒng)計
哪個設計階段耗時最長(圖13)?耗時最長的是測試和調(diào)試階段。
模擬器件提供商要注意了!對于品牌忠誠度而言,這可能不是件好事。根據(jù)本次調(diào)查,差不多三分之二(63%)的回復者聲稱當他們選擇模擬器件時沒有品牌忠誠度(圖14)。
這準確嗎?根據(jù)《Planet Analog》編輯Bill Schweber的說法,這是不準確的?!疤拱字v,這些結(jié)果與我從工程師和供應商(他們不可否認地帶有偏見)了解的情況相矛盾。以我的經(jīng)驗,設計工程師通常會選擇一個領域中的兩到三個頂級模擬器件供應商,特別是他們已經(jīng)打過交道,擁有符合規(guī)格(最大和最小規(guī)格,并不僅僅是額定規(guī)格),并且通過應用說明、演示板、參考設計甚至現(xiàn)場應用工程師對他們進行支持的供應商。如果他們擁有豐富經(jīng)驗的話,他們會對更換供應商,甚至更換同一供應商的產(chǎn)品家族有所顧忌?!?
雖然許多設計工程師正在采用可編程邏輯(這是我最近探討過的另一個典型現(xiàn)象),但是在其可編程邏輯中采用嵌入式處理器的比例卻相當少,僅36%,一半工程師表示他們采用硬內(nèi)核,一半表示采用軟內(nèi)核(圖15)。令人欣慰的是,采用嵌入式處理器的人數(shù)在增加,雖然增加速度很慢。