嵌入式開發(fa)就是指在(zai)嵌入式操(cao)作系統下進(jin)行開發(fa),包括在(zai)系統化(hua)設計(ji)指導(dao)下的硬件(jian)和軟件(jian)以(yi)及綜合研(yan)發(fa)。除暫(zan)且分離硬件(jian)的EDA研(yan)發(fa)以(yi)外,側(ce)重(zhong)的就是在(zai)一定硬件(jian)條件(jian)下的系統化(hua)設計(ji)和軟件(jian)研(yan)發(fa)。
一、嵌入式開發的定義
嵌入式開發是指利用分立元件或集成器件進行電路設計、結構設計,再進行軟件編程(通常是高級語言),實驗,經過多輪修改設計、制作,最終完成整個系統的開發。這種嵌入式開發,適用于未來產品比較單一,產量比較大,產品開發周期比較長,成本控制比較嚴格的系統。
嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)技術(shu)不(bu)(bu)是(shi)(shi)單(dan)純(chun)的(de)(de)(de)軟件(jian)技術(shu),也不(bu)(bu)是(shi)(shi)單(dan)純(chun)的(de)(de)(de)硬(ying)件(jian)技術(shu),是(shi)(shi)一(yi)(yi)門如何在一(yi)(yi)個特定的(de)(de)(de)硬(ying)件(jian)環境上(shang)開發(fa)與構建特定的(de)(de)(de)可編程軟件(jian)系(xi)統(tong)(tong)的(de)(de)(de)綜合技術(shu)。嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)技術(shu)是(shi)(shi)在嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong)的(de)(de)(de)發(fa)展(zhan)中(zhong)應運而(er)生的(de)(de)(de),它是(shi)(shi)依附于嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong),并推動嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong)不(bu)(bu)斷向前發(fa)展(zhan)的(de)(de)(de)核(he)心(xin)動力。嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)是(shi)(shi)一(yi)(yi)種專用的(de)(de)(de)計(ji)算(suan)機系(xi)統(tong)(tong),作為裝(zhuang)置或設備(bei)的(de)(de)(de)一(yi)(yi)部(bu)分。通常,嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong)是(shi)(shi)一(yi)(yi)個控制程序存(cun)儲在ROM中(zhong)的(de)(de)(de)嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)處理(li)器控制板。事實(shi)上(shang),所有(you)帶有(you)數字(zi)接口的(de)(de)(de)設備(bei),如手(shou)表(biao)、微波爐、錄像機、汽車(che)等,都使用嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong),有(you)些嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong)還包含操作系(xi)統(tong)(tong),但(dan)大(da)多(duo)數嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)統(tong)(tong)都是(shi)(shi)是(shi)(shi)由(you)單(dan)個程序實(shi)現整個控制邏輯。嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)技術(shu)近年來得(de)到了飛速的(de)(de)(de)發(fa)展(zhan),但(dan)是(shi)(shi)嵌(qian)(qian)(qian)入(ru)(ru)(ru)式(shi)(shi)(shi)(shi)產(chan)業涉及的(de)(de)(de)領(ling)域(yu)非常廣泛,彼此之間的(de)(de)(de)特點(dian)也相當明顯(xian)。例如,很(hen)多(duo)行業:手(shou)機、PDA、車(che)載(zai)導(dao)航、工控、軍工、多(duo)媒體終端、網關(guan)、數字(zi)電視(shi)等。
二、主流的嵌入式開發平臺
主流的嵌入式平臺有三種:ARM平臺、DSP平臺和FPGA平臺。
1、ARM
ARM微處理器是由ARM公司提供IP(Intellectual Property,知識產權)授權,交付多個芯片設計廠商整合生產的。在2007年,意法半導體(ST)公司成為第一個引入ARM Cortex-M授權的半導體廠商,開啟了高性能、低成本、低功耗的ARM嵌入式芯片新時代,其生產的STM32系列微處理器是最流行的Cortex-M微處理器。ARM嵌入式系統廣泛應用于自動檢測與控制、智能儀器儀表、機電一體化設備、汽車電子及日常消費電子產品中,其優越的性能和完善的開發環境得到廣大電子工程師的青睞。
2、DSP平臺
嵌入式DSP處理器(Embedded Digital Signal Processor,EDSP),是專門用于信號處理方面的處理器,其在系統結構和指令算法方面進行了特殊設計,芯片內部采用程序和數據分開存儲及傳輸的哈佛結構,具有專門硬件乘法器,采用流水線操作,提供特殊的DSP指令,可用來快速地實現各種數字信號處理算法,具有很高的編譯效率和指令的執行速度,在數字濾波、FFT、譜分析等各種儀器上獲得了大規模的應用。
3、FPGA平臺
隨著平臺級FPGA產品的出現和EDA設計工具軟件的不斷發展,利用現有的FPGA和EDA工具,人們也可以很方便地在FPGA中嵌入RISC(Reduced Instruction Set Computer,精簡指令集)處理器內核、DSP算法、存儲器、專用ASIC模塊、其它數字IP Core以及用戶定制邏輯等,構建成一個可編程的片上系統(SOPC),把原來需要在PCB上采用處理器、DSP、若干ASIC芯片才能實現的功能全都集成到了單片FPGA上。
FPGA內部嵌入(ru)了豐(feng)富的(de)(de)乘法器(qi)(DSP)資(zi)(zi)(zi)源(yuan)(yuan)、高速收發(fa)器(qi)(GTP/GTX)資(zi)(zi)(zi)源(yuan)(yuan)、以太網MAC資(zi)(zi)(zi)源(yuan)(yuan)、嵌入(ru)式處理(li)器(qi)(Power PC)資(zi)(zi)(zi)源(yuan)(yuan)、時鐘及鎖相環資(zi)(zi)(zi)源(yuan)(yuan)、存儲器(qi)(BRAM)資(zi)(zi)(zi)源(yuan)(yuan)等(deng),甚至在Xilinx公司(si)最新推出的(de)(de)Zynq-7000系列芯片(pian)之中嵌入(ru)了ARM資(zi)(zi)(zi)源(yuan)(yuan),將傳(chuan)統(tong)的(de)(de)FPGA演變成(cheng)了ARM+FPGA的(de)(de)擴展開(kai)發(fa)平臺。這些嵌入(ru)的(de)(de)硬件(jian)資(zi)(zi)(zi)源(yuan)(yuan)極(ji)大(da)地增強了傳(chuan)統(tong)FPGA的(de)(de)功能,提升了FPGA的(de)(de)工作效率和靈活性,使(shi)得一(yi)塊FPGA平臺就(jiu)可適用于多(duo)種(zhong)(zhong)產品,進行各種(zhong)(zhong)擴展。開(kai)發(fa)者(zhe)只需要掌握Verilog HDL等(deng)硬件(jian)描述語言(yan)和嵌入(ru)式系統(tong)開(kai)發(fa)的(de)(de)相關知識,就(jiu)可對(dui)整(zheng)個(ge)系統(tong)進行編程和控制。
三、嵌入式開發的硬件環境需求
(1)嵌入式處理器:MPU、DSP。
(2)存儲器系統:Flash+RAM+MEM card+mini HD。
嵌入式系統有別于一般的通用計算機系統,它不具備像硬盤那樣大容量的存儲介質,而用靜態易失型存儲器(RAM、SRAM)、動態存儲器(DRAM)和非易失型存儲器(ROM、EPROM、EEPROM、FLASH)作為存儲介質,其中FLASH憑借其可擦寫次數多、存儲速度快、存儲容量大、價格便宜等優點,在嵌入式領域內得到了廣泛應用。
(3)輸入設備:鍵盤,視/音頻輸入,A/D。
(4)輸出設備:顯示(LED/LCD/OLED)裝置,視/音頻輸出,A/D。
(5)通訊接口:Ehternet(802.3),WIFI(802.11)。
(6)總線接口:RS232/RS485,USB,1394(Firewire)。
(7)電源管理:待機、休眠、功耗管理等。
嵌入式開(kai)(kai)發(fa)的(de)硬件平臺選(xuan)擇主要是嵌入式處(chu)理(li)器的(de)選(xuan)擇。在具(ju)體應(ying)用中(zhong)處(chu)理(li)器的(de)選(xuan)擇決定(ding)了其(qi)市場競爭(zheng)力。在一個系統(tong)中(zhong)使用什么樣的(de)嵌入式處(chu)理(li)器主要取決于應(ying)用領(ling)域、用戶的(de)需求、成本、開(kai)(kai)發(fa)的(de)難易程度等(deng)因素。在開(kai)(kai)發(fa)過程中(zhong),選(xuan)擇最適用的(de)硬件平臺是一項(xiang)很復雜的(de)工作,包括要考慮其(qi)他工程的(de)影響以(yi)及(ji)缺乏完整或(huo)準確的(de)信(xin)息等(deng)。