單片機(jī)、嵌入式和X86
2012/9/12 10:56:36
在工業(yè)控制的應(yīng)用場合,歷來有把嵌入式同X86的PC機(jī)對立的習(xí)慣性思維。是的,把計算機(jī)做進(jìn)產(chǎn)品一起賣掉,嵌入式,尤其是用廉價的單片機(jī),成本最低??墒?,成本還要包括硬件的系統(tǒng)集成(包括電源、外設(shè)),軟件(系統(tǒng)和應(yīng)用軟件)。這樣算,就要找現(xiàn)成的開發(fā)平臺。國內(nèi)早期單片機(jī)之所以能替代北工大行銷多年的TP-801單板機(jī),重要的是,有人,如江蘇啟東搞出了硬件的開發(fā)平臺。接著,又做了配套的軟件:監(jiān)控和高級語言,甚至一些常用的程序庫。后來流行了單片機(jī),現(xiàn)在又有嵌入式ARM,就是試圖在不同的硬件(CPU指令系統(tǒng)不同)之上,規(guī)范出硬件抽象層HAL(Hardware Abstraction Layer)上,搭建包括設(shè)備驅(qū)動的板級支持包BSP(Board Support Package),再提供實時操作系統(tǒng)RTOS,以及應(yīng)用程序接口API,來支持用戶的開發(fā)。人們把ARM看作手臂,幫助較快實現(xiàn)新產(chǎn)品的研發(fā)。假使別人真的明白ARM是先進(jìn)的RISC機(jī)器的簡稱,RISC是什么?反而會把許多不搞計算機(jī)體系結(jié)構(gòu)、只搞工控的朋友搞糊涂的。包括對于RTOS,純學(xué)自動化搞工控的,許多人也不熟悉。
所以,懂計算機(jī)體系結(jié)構(gòu),善于從硬軟件兩方面結(jié)合,兩手都硬的朋友,從微芯片下手做產(chǎn)品,可以大大降低成本。那么,要我們這些專業(yè)搞計算機(jī)的人有什么用呢?我們就要為搞工控的專家們,提供越來越方便的嵌入式的開發(fā)平臺。這也是計算機(jī)輔助設(shè)計CAD。不過,國內(nèi)很多人以為CAD就是輔助搞機(jī)械的做三維或平面視圖的機(jī)械設(shè)計。
從單片機(jī)MCU、EDSP到SoC(System on a Chip)開始,看到Intel的48、51、96到196/296自然還有最早的F8、MC68010/68300等等,現(xiàn)在還流行三星、菲力浦等嵌入式的芯片,這幾代硬件到今后價格極低廉的SoC,硬件成本低廉,自然就有系統(tǒng)要自己設(shè)計的難題,嵌入式應(yīng)用的最大問題,在于要做硬件設(shè)計、測試,系統(tǒng)軟件和應(yīng)用程序的代碼編程、調(diào)試。于是,人們很早就嘗試把單片機(jī)的計算機(jī)輔助設(shè)計用來簡化系統(tǒng)的生成與調(diào)試。應(yīng)用的主要技術(shù)路線是用一個母機(jī)(上位機(jī))和被開發(fā)的子機(jī)(下位機(jī))做通信聯(lián)系,在母機(jī)中利用諸如PC機(jī)這樣豐富的資源,做開發(fā)調(diào)試,語言上盡可能給用戶以高級的非匯編語言來編程,加上API的支持,是縮短了研發(fā)的時間;最好的是母機(jī)本身就是一個仿真系統(tǒng),直接有接口去插入下位機(jī)的CPU插槽,可以單步跟蹤調(diào)試需要嵌入產(chǎn)品的計算機(jī)。這里就舉一個利用計算機(jī)輔助的仿真系統(tǒng),在工業(yè)現(xiàn)場的例子。1985年6月26日,在洛陽玻璃廠原料車間,當(dāng)時引進(jìn)德國的多處理器實時操作系統(tǒng)的原料配料計算機(jī)控制系統(tǒng)(五個8085A的CPU,還有一個用STEP5語言的PLC),在投產(chǎn)前測試中,就是用一個這樣的仿真系統(tǒng),能夠把仿真8085ACPU的部件插入下位機(jī)的CPU槽位里,仔細(xì)跟蹤程序運行,定位軟硬件故障。只用一個上午,就把故障完全確定了。它幫助我可以定位到端口,所以,可以找出故障的板卡和具體的芯片。下午,只更換了幾個芯片,故障就全部排除,完成了七一投產(chǎn)前的準(zhǔn)備工作。
所以,在做工業(yè)控制項目,采用嵌入式計算機(jī),就要從容易實現(xiàn)現(xiàn)場故障排除,它有沒有計算機(jī)的輔助,應(yīng)該是從事工業(yè)控制項目中選擇計算機(jī)時的一個重要的考慮因素。
單是考慮大批量的產(chǎn)品需求、加上有小體積、低功耗的限制,人們無疑會選單片機(jī)的,雖然,它的開發(fā)需要自己做硬件的PCB板子,全部軟件要自己精心去設(shè)計,但是,為這類大批量的產(chǎn)品去做開頭難度較大的硬軟件設(shè)計,包括用ARM的體系結(jié)構(gòu)去做,一勞永逸是值得的。成功的例子,最明顯就是在電腦市場上大量熱銷的MP3、PDA掌上機(jī)、電子詞典、MP4、新款帶多媒體的手機(jī)等等近三年的數(shù)碼產(chǎn)品。里面的單片機(jī)幾乎都是RISC(精簡指令系統(tǒng)計算機(jī))的CPU哦,甚至在音頻、視頻需要數(shù)碼處理,而大量用了雙CPU(MCU+DSP)[見下圖]。
可是,工業(yè)控制的項目,一個現(xiàn)場有一種不同的工藝或設(shè)備的要求,不如用上手快的X86系統(tǒng),它現(xiàn)在有各種方便于上下位計算機(jī)通信的接口和軟件,可以利用的資源豐富,它易于國內(nèi)許多學(xué)過X86的人上手,易于向熟悉X86(PC機(jī))的用戶交接,便于他們自己早日學(xué)會去維護(hù)。只要是工業(yè)級的板卡,在穩(wěn)定性和抗干擾方面,由專門做工業(yè)級板卡廠商的正規(guī)產(chǎn)品,后期維護(hù)的麻煩絕對很少。比如,我和伙伴一起選用這種硬件系統(tǒng)的水泥廠偏火控制,歷次現(xiàn)場報急,要求去人,三次有三次全部不是我選擇的計算機(jī)硬件、研發(fā)的軟件出問題,不光是計算機(jī)選型。而且,包括機(jī)箱有空氣過濾保持主機(jī)內(nèi)微正壓,鍵盤防水、防灰等多種措施,合同保質(zhì)期內(nèi),一直良好。
X86系統(tǒng),說白了,就是充分利用PC的資源優(yōu)勢做開發(fā)、做移交、做服務(wù)。所以,在項目和工程的研發(fā)上,可以選擇X86的系統(tǒng)。人們以為X86就是Intel的CPU,其實,還有AMD、VIA(威盛,包括他合并的IDT),去年,我曾經(jīng)測試了一個磐儀用Transmeta的CPU做的X86的主板,檢查它的X86兼容性,看看原來做車載PC的兩個GIS(支持GPS做語音導(dǎo)航的地理信息系統(tǒng))軟件在上面跑的如何,這顆發(fā)熱僅3、4瓦的CPU,還真的可以。自然,還得用BSWinStone做了辦公軟件、和CCWinStone多媒體應(yīng)用的兼容性測試,也是合格的。這顆CPU是用RISC技術(shù),實現(xiàn)和X86兼容的,它的功能完全就像一臺PC的表現(xiàn)。功耗卻大大降低了。
用于工業(yè)控制項目的研發(fā)周期,對于研發(fā)人員的門檻高低,都關(guān)系到產(chǎn)品的成本。所以,應(yīng)當(dāng)考慮支持它的平臺資源是否多。而且,要易于上手,今后方便交接給最終用戶去維護(hù),X86真的是一種便捷的方案。
所以,懂計算機(jī)體系結(jié)構(gòu),善于從硬軟件兩方面結(jié)合,兩手都硬的朋友,從微芯片下手做產(chǎn)品,可以大大降低成本。那么,要我們這些專業(yè)搞計算機(jī)的人有什么用呢?我們就要為搞工控的專家們,提供越來越方便的嵌入式的開發(fā)平臺。這也是計算機(jī)輔助設(shè)計CAD。不過,國內(nèi)很多人以為CAD就是輔助搞機(jī)械的做三維或平面視圖的機(jī)械設(shè)計。
從單片機(jī)MCU、EDSP到SoC(System on a Chip)開始,看到Intel的48、51、96到196/296自然還有最早的F8、MC68010/68300等等,現(xiàn)在還流行三星、菲力浦等嵌入式的芯片,這幾代硬件到今后價格極低廉的SoC,硬件成本低廉,自然就有系統(tǒng)要自己設(shè)計的難題,嵌入式應(yīng)用的最大問題,在于要做硬件設(shè)計、測試,系統(tǒng)軟件和應(yīng)用程序的代碼編程、調(diào)試。于是,人們很早就嘗試把單片機(jī)的計算機(jī)輔助設(shè)計用來簡化系統(tǒng)的生成與調(diào)試。應(yīng)用的主要技術(shù)路線是用一個母機(jī)(上位機(jī))和被開發(fā)的子機(jī)(下位機(jī))做通信聯(lián)系,在母機(jī)中利用諸如PC機(jī)這樣豐富的資源,做開發(fā)調(diào)試,語言上盡可能給用戶以高級的非匯編語言來編程,加上API的支持,是縮短了研發(fā)的時間;最好的是母機(jī)本身就是一個仿真系統(tǒng),直接有接口去插入下位機(jī)的CPU插槽,可以單步跟蹤調(diào)試需要嵌入產(chǎn)品的計算機(jī)。這里就舉一個利用計算機(jī)輔助的仿真系統(tǒng),在工業(yè)現(xiàn)場的例子。1985年6月26日,在洛陽玻璃廠原料車間,當(dāng)時引進(jìn)德國的多處理器實時操作系統(tǒng)的原料配料計算機(jī)控制系統(tǒng)(五個8085A的CPU,還有一個用STEP5語言的PLC),在投產(chǎn)前測試中,就是用一個這樣的仿真系統(tǒng),能夠把仿真8085ACPU的部件插入下位機(jī)的CPU槽位里,仔細(xì)跟蹤程序運行,定位軟硬件故障。只用一個上午,就把故障完全確定了。它幫助我可以定位到端口,所以,可以找出故障的板卡和具體的芯片。下午,只更換了幾個芯片,故障就全部排除,完成了七一投產(chǎn)前的準(zhǔn)備工作。
所以,在做工業(yè)控制項目,采用嵌入式計算機(jī),就要從容易實現(xiàn)現(xiàn)場故障排除,它有沒有計算機(jī)的輔助,應(yīng)該是從事工業(yè)控制項目中選擇計算機(jī)時的一個重要的考慮因素。
單是考慮大批量的產(chǎn)品需求、加上有小體積、低功耗的限制,人們無疑會選單片機(jī)的,雖然,它的開發(fā)需要自己做硬件的PCB板子,全部軟件要自己精心去設(shè)計,但是,為這類大批量的產(chǎn)品去做開頭難度較大的硬軟件設(shè)計,包括用ARM的體系結(jié)構(gòu)去做,一勞永逸是值得的。成功的例子,最明顯就是在電腦市場上大量熱銷的MP3、PDA掌上機(jī)、電子詞典、MP4、新款帶多媒體的手機(jī)等等近三年的數(shù)碼產(chǎn)品。里面的單片機(jī)幾乎都是RISC(精簡指令系統(tǒng)計算機(jī))的CPU哦,甚至在音頻、視頻需要數(shù)碼處理,而大量用了雙CPU(MCU+DSP)[見下圖]。
可是,工業(yè)控制的項目,一個現(xiàn)場有一種不同的工藝或設(shè)備的要求,不如用上手快的X86系統(tǒng),它現(xiàn)在有各種方便于上下位計算機(jī)通信的接口和軟件,可以利用的資源豐富,它易于國內(nèi)許多學(xué)過X86的人上手,易于向熟悉X86(PC機(jī))的用戶交接,便于他們自己早日學(xué)會去維護(hù)。只要是工業(yè)級的板卡,在穩(wěn)定性和抗干擾方面,由專門做工業(yè)級板卡廠商的正規(guī)產(chǎn)品,后期維護(hù)的麻煩絕對很少。比如,我和伙伴一起選用這種硬件系統(tǒng)的水泥廠偏火控制,歷次現(xiàn)場報急,要求去人,三次有三次全部不是我選擇的計算機(jī)硬件、研發(fā)的軟件出問題,不光是計算機(jī)選型。而且,包括機(jī)箱有空氣過濾保持主機(jī)內(nèi)微正壓,鍵盤防水、防灰等多種措施,合同保質(zhì)期內(nèi),一直良好。
X86系統(tǒng),說白了,就是充分利用PC的資源優(yōu)勢做開發(fā)、做移交、做服務(wù)。所以,在項目和工程的研發(fā)上,可以選擇X86的系統(tǒng)。人們以為X86就是Intel的CPU,其實,還有AMD、VIA(威盛,包括他合并的IDT),去年,我曾經(jīng)測試了一個磐儀用Transmeta的CPU做的X86的主板,檢查它的X86兼容性,看看原來做車載PC的兩個GIS(支持GPS做語音導(dǎo)航的地理信息系統(tǒng))軟件在上面跑的如何,這顆發(fā)熱僅3、4瓦的CPU,還真的可以。自然,還得用BSWinStone做了辦公軟件、和CCWinStone多媒體應(yīng)用的兼容性測試,也是合格的。這顆CPU是用RISC技術(shù),實現(xiàn)和X86兼容的,它的功能完全就像一臺PC的表現(xiàn)。功耗卻大大降低了。
用于工業(yè)控制項目的研發(fā)周期,對于研發(fā)人員的門檻高低,都關(guān)系到產(chǎn)品的成本。所以,應(yīng)當(dāng)考慮支持它的平臺資源是否多。而且,要易于上手,今后方便交接給最終用戶去維護(hù),X86真的是一種便捷的方案。
提交
查看更多評論
其他資訊
FPC-8107寬溫?zé)o風(fēng)扇設(shè)計Box PC
ARES-1970E-M12 磐儀無風(fēng)扇寬溫BOX PC
ARES-1980 - Intel 第 11 代 Tiger Lake 邊緣運算控制器
磐儀推出EmETXe-a10M0 COM Express® Type 6緊湊型模塊
磐儀推出新ARM解決方案用于垂直市場的智能應(yīng)用