2018-11-20 11:04:53分類:軟件開發(fā)6624
在日益信息化的現(xiàn)代社會中,計算機和網(wǎng)絡(luò)的應(yīng)用已經(jīng)全面滲透到日常生活中,各種應(yīng)用嵌入式系統(tǒng)的電子產(chǎn)品也隨處可見,計算機的應(yīng)用經(jīng)過桌面PC系統(tǒng)的空前之后,嵌入式系統(tǒng)的應(yīng)用正風(fēng)起云涌,廣泛進(jìn)入到工業(yè)、軍事、通信、環(huán)保、電力、鐵路、金融等眾多領(lǐng)域。作為兩大類型計算機之一的專用計算機系統(tǒng)、即嵌入式系統(tǒng)在應(yīng)用數(shù)量上已經(jīng)遠(yuǎn)遠(yuǎn)超過傳統(tǒng)的通用計算機系統(tǒng),嵌入式微控制器技術(shù)的出現(xiàn)給現(xiàn)代工業(yè)控制領(lǐng)域帶來了一次新的技術(shù)革命。
嵌入式微控制器組成的系統(tǒng)可嵌入到任何需要控制的設(shè)備中,并且在工控領(lǐng)域的應(yīng)用已經(jīng)越來越廣泛。嵌入式系統(tǒng)按形態(tài)可分為設(shè)備級(工控機)、板級(單板、模塊)、芯片級(MCU、SoC)。當(dāng)前使用的單片機與工控機是一種典型的嵌入式系統(tǒng)應(yīng)用。隨著Internet的飛速發(fā)展,對各種工控設(shè)備的網(wǎng)絡(luò)功能要求也越來越高。大量的智能設(shè)備將通過網(wǎng)絡(luò)相互傳遞信息和數(shù)據(jù),實現(xiàn)智能化現(xiàn)場設(shè)備的功能自治性、系統(tǒng)結(jié)構(gòu)的高度分散性以及監(jiān)管控一體化。
在嵌入式系統(tǒng)的市場競爭愈加激烈的今天,如何快速地將符合需求的產(chǎn)品投入市場并在競爭中保持一席之地?成為眾多嵌入式研發(fā)制造企業(yè)所面臨的共同課題。
所以必須通過加快設(shè)計流程來提高設(shè)計質(zhì)量,而目前大多企業(yè)普遍采取的解決方案是利用現(xiàn)成的商業(yè)化平臺。嵌入式設(shè)備在開發(fā)過程中,除了必須考慮它的處理器架構(gòu)、操作系統(tǒng)性能、以及其他組件之外,開發(fā)人員還必須了解一些例如:系統(tǒng)的哪些部分需要設(shè)計、哪些部分需要購買現(xiàn)成設(shè)備等等。相關(guān)文章:《制定具體的軟件開發(fā)技術(shù)方案》
一般自行設(shè)計的方案,它的優(yōu)勢是可以全面地自定義最終的解決方案并優(yōu)化成本,但是任何設(shè)計規(guī)格的更改或疏忽都會使成本高昂,且周期漫長。相反,使用商業(yè)現(xiàn)成的平臺將增加產(chǎn)品的銷售成本,或者可能會浪費一些不必要的成本,但是通常來說,現(xiàn)成的系統(tǒng)提供了更快的驗證周期,因而也就具有更為快捷的設(shè)計流程,從而在更短的上市時間內(nèi)保證設(shè)計的質(zhì)量。
下文我們就將用于開發(fā)嵌入式系統(tǒng)的兩種方案----自行設(shè)計或使用現(xiàn)成平臺進(jìn)行對比闡述,并且討論與這兩種方案相關(guān)的技術(shù)和經(jīng)濟風(fēng)險。
開發(fā)之前,需要為系統(tǒng)的核心控制部分選擇一種處理器技術(shù),目前研祥采用以下五種技術(shù):
1. 微控制器-微控制器的成本極為低廉,并且通常在單一的芯片上提供了集成的解決方案,且包括I/O外圍設(shè)備。它們通常帶有極小的片上存儲容量,而且難以用于復(fù)雜性高和需要擴展的場合。此外,其時鐘速率通常是10MHz的數(shù)量級,因此一般不能實現(xiàn)高性能的控制循環(huán)。
2. 嵌入式處理器-和微控制器相比,嵌入式處理器的時鐘速率更高且通常具有外部存儲接口,因而性能和擴展性并不成問題。但是應(yīng)用程序需要進(jìn)行復(fù)雜的驅(qū)動開發(fā),因為嵌入式處理器通常并不帶有片上模擬外圍設(shè)備。此外,隨著芯片封裝技術(shù)的發(fā)展,嵌入式處理器通常采用高密度的封裝技術(shù),例如球柵陣列封裝(ball-grid array,即BGA),這將導(dǎo)致較復(fù)雜的制造流程,增添了更為困難的硬件調(diào)試工作。
3. 數(shù)字信號處理器(DSP)-DSP是一種專用的微處理器,它提供額外的指令以優(yōu)化特定的數(shù)學(xué)函數(shù),例如乘法和累加操作。DSP對于計算繁重的應(yīng)用場合來說是極為有用的,但是通常需要專業(yè)的知識來利用它的軟件性能。
4. 專用集成電路(ASIC)-ASIC芯片是專為某個特定的應(yīng)用而設(shè)計的,不具有通用性。對于解決諸如功耗和產(chǎn)品成本等問題,ASIC被廣泛認(rèn)為是一種極好的方案。但是,極為昂貴的ASIC開發(fā)和制造流程通常讓人望而卻步,一般僅限于具有極大產(chǎn)量的產(chǎn)品。
5. 現(xiàn)場可編程門陣列(FPGA)-FPGA在自定義的ASIC設(shè)計和現(xiàn)成的技術(shù)之間提供了極好的平衡。它們具有高度的專有化性能,同時可以通過編程重新配置邏輯模塊,因而其開發(fā)成本與ASIC相比要低得多。雖然FPGA可以被應(yīng)用于各種場合,但是一般來說復(fù)雜的FPGA設(shè)計并不常見,因為對于大部分習(xí)慣于使用C語言進(jìn)行順序編程的嵌入式軟件開發(fā)者來說,VHDL編程格式顯得十分陌生。
在許多情況下,單一的處理器技術(shù)并不足以解決應(yīng)用的需求,因此,混合式架構(gòu)逐漸成為發(fā)展的方向。如圖1所示,嵌入式處理器用于進(jìn)行系統(tǒng)管理、用戶界面和數(shù)據(jù)分析,而DSP負(fù)責(zé)與I/O模塊和對數(shù)據(jù)進(jìn)行初步處理等任務(wù)。這種混合式架構(gòu)在嵌入式系統(tǒng)設(shè)計中變得十分普遍。
在確定了使用何種處理器技術(shù)之后,設(shè)計人員還需要完成I/O電路的開發(fā)。如果嵌入式系統(tǒng)中存在任何的模擬信號,那么就需要使用模數(shù)轉(zhuǎn)換器(ADC)、數(shù)模轉(zhuǎn)換器(DAC)、以及相應(yīng)的軟件驅(qū)動。模擬電路的設(shè)計同樣會遇到很多復(fù)雜的問題,限于篇幅本文不再贅述。相關(guān)文章:《軟件開發(fā)方案服務(wù)型公司為什么在國內(nèi)會比較吃香?》
采用這種方案,雖然通常來說需要付出比板卡組件成本更高的價錢,但是可以顯著縮短產(chǎn)品進(jìn)入市場的時間。除此之外,這些系統(tǒng)具有較好的可擴展性。隨著處理器技術(shù)的進(jìn)步,嵌入式系統(tǒng)出現(xiàn)以下幾種不同的實現(xiàn)技術(shù):
1、 非集成式嵌入式系統(tǒng)------對于使用現(xiàn)成產(chǎn)品來構(gòu)建系統(tǒng),這種系統(tǒng)通常是最為經(jīng)濟的解決方案。但是,針對這種系統(tǒng)的軟件開發(fā)工具幾乎從未集成,而且這些系統(tǒng)通常需要進(jìn)行各種監(jiān)管認(rèn)證。
2、 集成式嵌入式系統(tǒng)------除了具有與非集成式嵌入式系統(tǒng)相同的組件,這種系統(tǒng)還提供諸如沖擊、振動、工作溫度,以及環(huán)境認(rèn)證之類的技術(shù)說明。通常這些系統(tǒng)更加昂貴,但一般都帶有集成的軟件開發(fā)環(huán)境,且具有更為豐富的I/O選擇。
3、 工業(yè)級PC------利用現(xiàn)成的PC技術(shù),工業(yè)級PC為開發(fā)工具及I/O性能提供了更為豐富的選擇。它們也具有許多與其他集成式嵌入式系統(tǒng)相同的技術(shù)說明和認(rèn)證,但這種性能是以成本為代價的,它比前述兩種方案更為昂貴。
基于EVOC EEB PowerPC模塊的集成式嵌入式系統(tǒng)架構(gòu)與圖1所示的簡單方框圖相似。它使用Freescale PowerPC嵌入式處理器運行VxWorks或Linux實時操作系統(tǒng)。PowerPC通過內(nèi)部的60X總線或PCI總線與DSP/FPGA相連接。 DSP/FPGA直接連接至AD采集芯片、開關(guān)量輸入輸出等外圍接口。
縱觀以上兩種設(shè)計方案,技術(shù)性在其中能不能起到?jīng)Q定性作用,而簡單的經(jīng)濟性分析卻是非常必要的。如果最終的利潤足大于開發(fā)過程中所花費的工程成本投資,那么所做的決定就是明智的。準(zhǔn)確估算自行設(shè)計方案所花費的成本,并不是一個很簡單的過程;如果只是把板卡組件的成本和硬件及軟件的開發(fā)時間相加,那么只能是非常粗略地估算了總投資成本。還應(yīng)該考慮其他的潛在成本才能準(zhǔn)確地評估實際的任務(wù)成本。
評估了工程投資成本后,可使用公式: TPC/(SUP-VCUP)=BEP(其中,TFC為總固定成本,VCUP為單位變動成本, BEP為收支平衡點。)簡單計算出企業(yè)的收支平衡點。但這并沒有包含其他潛在成本。不過,如果選擇了集成式嵌入式系統(tǒng),不但可以縮短上市時間,而且早期的利潤將會用于成本優(yōu)化和特性改進(jìn)。通過這種方案,可以在整個產(chǎn)品生命周期內(nèi)分?jǐn)偼顿Y成本,而不是在早期的開發(fā)過程中投入所有資金。
那么這樣是否就不用再自行設(shè)計板卡了呢?當(dāng)然不是。對于那些對形狀尺寸有具體要求且具有極高產(chǎn)量的系統(tǒng),或者技術(shù)要求極為苛刻的系統(tǒng)來說,自行設(shè)計的方案將更具優(yōu)勢。而對于產(chǎn)量相對較低、技術(shù)復(fù)雜又需要快速上市的產(chǎn)品,使用現(xiàn)成平臺可以讓供應(yīng)商負(fù)擔(dān)物流和潛在成本,而使設(shè)計人員可以專注于突出技術(shù)優(yōu)勢,從而在市場競爭中處于領(lǐng)先位置。
在這里和大家分享一下嵌入式軟件開發(fā)入門必看的經(jīng)典教程,為那些現(xiàn)在還在嵌入式軟件開發(fā)門外徘徊的小伙伴一些小小的借鑒。
2020-05-12
物聯(lián)網(wǎng)軟件開發(fā)是一個雷區(qū)。市場需要高質(zhì)量,可擴展,強大,安全且用戶友好的解決方案,物聯(lián)網(wǎng)開發(fā)團(tuán)隊必須重新評估其程序和工作流程,以便將所有內(nèi)容考慮在內(nèi)。以下列出了物聯(lián)網(wǎng)項目的七個軟件開發(fā)挑戰(zhàn)。
2020-04-29
作為OA辦公自動化軟件的生命動力,技術(shù)無疑是最關(guān)鍵的,就如同有些人生來就是富二代一樣,好的開發(fā)語言造就的是“富二代”而不是平民。
2020-04-22
隨著產(chǎn)品的持續(xù)換代、用戶量的穩(wěn)步增長、信息量的積淀,開發(fā)者必須持續(xù)協(xié)助顧客提升社交APP的后端開發(fā)構(gòu)架,即剛開始搭建專享網(wǎng)絡(luò)。由于其可以根據(jù)建立無線路由和專享網(wǎng)絡(luò),能夠 合理地和云服務(wù)平臺普通用戶服務(wù)器在互聯(lián)網(wǎng)上保持150%兩層防護(hù)。
2019-11-28
智能手機從各個角度重塑著大家的生活,手機App自然已經(jīng)成為主要的創(chuàng)業(yè)方式之一。但是App開發(fā)的技術(shù)門檻高,很多人詢問:開發(fā)一款A(yù)pp流程是什么?我想開發(fā)一款A(yù)pp,要從何入手呢?今天跟大家詳細(xì)介紹完整的手機app軟件開發(fā)流程。
2019-11-22
共享充電柜就是充電的一個智能柜子,就像現(xiàn)在的共享充電寶平臺,通過一個柜子裝有很多的充電寶,共享充電柜相當(dāng)于一個盒子。共享充電柜APP軟件開發(fā)就是用戶根據(jù)自己的充電設(shè)備需求,選擇合適的共享充電柜,有不同的型號的共享充電柜滿足商家的使用需求。
2019-09-24