關(guān)于嵌入式系統(tǒng).doc_第1頁
關(guān)于嵌入式系統(tǒng).doc_第2頁
關(guān)于嵌入式系統(tǒng).doc_第3頁
關(guān)于嵌入式系統(tǒng).doc_第4頁
關(guān)于嵌入式系統(tǒng).doc_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

一、什么是嵌入式系統(tǒng)嵌入式系統(tǒng)是“以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟硬件可裁減、功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)”。它與通用計(jì)算機(jī)技術(shù)的最大差異是必須支持硬件裁減和軟件裁減,以適應(yīng)應(yīng)用系統(tǒng)對體積、功能、功耗、可靠性、成本等的特殊要求。二、嵌入式系統(tǒng)開發(fā)的4個層次嵌入式系統(tǒng)的開發(fā)可分為4個層次:硬件層、驅(qū)動層、操作系統(tǒng)層和應(yīng)用層。1、硬件層硬件層開發(fā)的主要工作是根據(jù)應(yīng)用的需求,選擇適合的嵌入式處理器芯片,配置相應(yīng)的接口電路,為嵌入式應(yīng)用構(gòu)建一個硬件平臺。嵌入式系統(tǒng)的核心是嵌入式處理器。嵌入式處理器一般可分為嵌入式微處理器(EMPU)、嵌入式微控制器(EMCU)、嵌入式DSP處理器(EDSP)、嵌入式片上系統(tǒng)(ESoC)4類。 嵌入式微處理器(MicroProcessor Unit)嵌入式微處理器是從通用計(jì)算機(jī)的CPU 演變過來的。其特征是具有32 位以上的處理器,具有較高的性能,其價格也相應(yīng)較高。與通用計(jì)算機(jī)的CPU 不同的是,它在實(shí)際應(yīng)用中只保留與應(yīng)用緊密相關(guān)的功能硬件,去除其它的冗余部分,以最低的功耗和資源實(shí)現(xiàn)應(yīng)用系統(tǒng)的需要。與工業(yè)控制計(jì)算機(jī)相比,嵌入式微處理器具有體積小、重量輕、成本低等優(yōu)點(diǎn)。但是在電路板上必須包括ROM、RAM、總線接口、各種外設(shè)等器件,從而降低了系統(tǒng)的可靠性,技術(shù)保密性也較差。嵌入式微處理器及其存儲器、總線、外設(shè)等安裝在一塊電路板上,稱為單板計(jì)算機(jī),如STD-BUS、PC104等。近年來,德國、日本的一些公司又開發(fā)出了類似火柴盒式、名片大小的嵌入式計(jì)算機(jī)系列OEM產(chǎn)品。目前主要的嵌入式微處理器有:ARM,PowerPC、MIPS、Atom 等系列。其中ARM是專門為各類嵌入式系統(tǒng)開發(fā)的嵌入式微處理器;PowerPC是 1990年代初期由摩托羅拉與IBM合作共同開發(fā)的通用型嵌入式CPU的架構(gòu)。設(shè)計(jì)上更強(qiáng)調(diào)低耗電、非桌面功能。目前.從世界上最高速的巨型機(jī)(HPC)、網(wǎng)絡(luò)路由器、通信設(shè)備、火星探測器、機(jī)頂盒到游戲機(jī)都在使用著PowerPC 架構(gòu)的微處理機(jī);MIPS處理器是20多年前由斯坦福大學(xué)開發(fā)的RISC體系結(jié)構(gòu)發(fā)展而來, MIPS科技公司以IP(知識產(chǎn)權(quán))授權(quán)方式向半導(dǎo)體廠家及嵌入式系統(tǒng)制造商提供MIPS-Based內(nèi)核設(shè)計(jì)。我國龍芯系列采用的是MIPS體系結(jié)構(gòu);而Atom (凌動)是Intel將x86體系結(jié)構(gòu)用于嵌入式系統(tǒng)的嵌入式微處理器產(chǎn)品。 嵌入式微控制器(MicroController Unit)嵌入式微控制器的典型代表是單片機(jī),將CPU 和計(jì)算機(jī)的外圍功能單元(如:存儲器、I/O 口、定時計(jì)數(shù)器、中斷系統(tǒng)等)集成在一塊芯片上。與嵌入式微處理器相比,單片機(jī)的最大特點(diǎn)是單片化,體積大大減小,功耗和成本更低。由于單片機(jī)的片內(nèi)資源豐富,特別適用于控制場合,所以國外都稱之為“微控制器”。嵌入式微控制器的品種數(shù)量繁多,表1-1列出了目前流行的代表產(chǎn)品。表1-1 目前流行的嵌入式微控制器廠商內(nèi)核代表產(chǎn)品Atmel愛特梅爾ARM7/9AVR8/32SAM7/SAM9AVR8/AVR32MICROCHIP微芯PICmicroMIPSPIC12/PIC16/PIC18PIC32FreeScale飛思卡爾C08/S08MC68H908ST意法半導(dǎo)體ARMSTR720/740NXP恩智浦Cotex-M3LPC1500TI德州儀器C24xARMTMS320C2000MSP430F/470FRenesas瑞薩SH 2/4H8/SuperH 嵌入式DSP 處理器(Digital Signal Processor)DSP 是專門用于信號處理的處理器,在系統(tǒng)結(jié)構(gòu)和指令算法方面進(jìn)行了特殊的設(shè)計(jì),具有很高的編譯效率和指令執(zhí)行速度。DSP算法正在大量進(jìn)入嵌入式領(lǐng)域,DSP應(yīng)用正在逐步從在通用單片機(jī)中以普通指令實(shí)現(xiàn)DSP功能過渡到采用嵌入式DSP處理器。推動嵌入式DSP處理器發(fā)展的主要因素是嵌入式系統(tǒng)的智能化,例如各種帶有智能邏輯的消費(fèi)類產(chǎn)品,生物信息識別終端,帶有加解密算法的鍵盤,ADSL 接入、實(shí)時語音壓解系統(tǒng),虛擬現(xiàn)實(shí)顯示等。這類智能化算法一般都是運(yùn)算量較大,特別是向量運(yùn)算、指針線性尋址等較多,而這些正是DSP處理器的長處所在。嵌入式DSP處理器比較有代表性的產(chǎn)品是Texas Instruments的TMS320系列,包括用于控制的C2000系列、移動通信的C5000系列,以及性能更高的C6000系列。此外CEVA公司的CEVA-X DSPs,CEVA-TeakLite DSPs系列具有專用的視頻指令和一個功能強(qiáng)大的三維DMA,廣泛用于便攜式多媒體SoC的視頻處理;ADI公司的ADSP-BF54x系列Blackfin處理器, 適合那些要求現(xiàn)場可升級、本地存儲和顯示能力至關(guān)重要的多種工業(yè)應(yīng)用,包括工業(yè)自動化、無線基礎(chǔ)設(shè)施、無線電信設(shè)備和交換機(jī)等應(yīng)用。 嵌入式片上系統(tǒng)(System On Chip)SoC設(shè)計(jì)技術(shù)始于20世紀(jì)90年代中期,它使用專用集成電路ASIC芯片設(shè)計(jì)。嵌入式片上系統(tǒng)從整個系統(tǒng)性能要求出發(fā),把微處理器、芯片結(jié)構(gòu)、外圍器件各層次電路直至器件的設(shè)計(jì)緊密結(jié)合起來,并通過建立在全新理念上的系統(tǒng)軟件和硬件的協(xié)同設(shè)計(jì),在單個芯片上實(shí)現(xiàn)整個系統(tǒng)的功能。SoC是一種基于IP(Intellectual Property)核嵌入式系統(tǒng)級芯片設(shè)計(jì)技術(shù),它將許多功能模塊集成在一個芯片上。如ARM RISC、MIPS RISC、DSP或其他的微處理器核心,加上通信的接口單元,例如通用串行端口(USB)、TCP/IP通信單元、GPRS通信接口、GSM通信接口、IEEE1394、藍(lán)牙模塊接口等,這些單元以往都是依照其各自功能做成一個個獨(dú)立的處理芯片。SoC 的最大特點(diǎn)是實(shí)現(xiàn)了軟硬件的無縫結(jié)合,片內(nèi)嵌入了操作系統(tǒng)的代碼模塊。SoC 具有極高的綜合性,可以應(yīng)用VHDL 等硬件描述語言,實(shí)現(xiàn)一個復(fù)雜的系統(tǒng)。由于絕大部分系統(tǒng)構(gòu)件都在片內(nèi),所以整個系統(tǒng)特別簡潔,不僅減小了系統(tǒng)的體積和功耗,而且提高了系統(tǒng)的可靠性和設(shè)計(jì)生產(chǎn)效率。SoC可以分為通用和專用兩類。通用系列現(xiàn)在幾乎每個半導(dǎo)體制造商都在生產(chǎn)。如TI的達(dá)芬奇處理器系列及OMAP處理器系列;飛思卡爾的i.MX系列及QorIQ系列, NXP的NPX系列, Intel的CE4000系列等;而專用SoC一般專門用于某個或某類系統(tǒng)中,不為一般用戶所知。2、驅(qū)動層它是介于嵌入式硬件和上層軟件之間的一個底層軟件開發(fā)包,主要目的是屏蔽下層硬件。該層一般擁有兩部分功能。一是系統(tǒng)引導(dǎo),包括嵌入式處理器和基本芯片的初始化;二是提供設(shè)備的驅(qū)動接口,負(fù)責(zé)嵌入式系統(tǒng)與外設(shè)的信息交互。驅(qū)動層程序一般包括硬件抽象層(HAL)、板級支持包(BSP)和設(shè)備驅(qū)動程序。 硬件抽象層:硬件抽象層(Hardware Abstraction Layer,HAL)是位于操作系統(tǒng)內(nèi)核與硬件電路之間的接口層,其目的在于將硬件抽象化。也就是說,可通過程序來控制所有硬件電路如CPU、I/O、Memory等的操作。這樣就使得系統(tǒng)的設(shè)備驅(qū)動程序與硬件設(shè)備無關(guān),從而大大提高了系統(tǒng)的可移植性。 板級支持包:板級支持包(Board Support Package,BSP)是介于主板硬件和操作系統(tǒng)中驅(qū)動層程序之間的一層,一般認(rèn)為它屬于操作系統(tǒng)的一部分,主要是實(shí)現(xiàn)對操作系統(tǒng)的支持,為上層的驅(qū)動程序提供訪問硬件設(shè)備寄存器的函數(shù)包,使之能夠更好地運(yùn)行于硬件主板。BSP是相對于操作系統(tǒng)而言的,不同的操作系統(tǒng)對應(yīng)于不同定義形式的BSP。 設(shè)備驅(qū)動程序:系統(tǒng)中安裝設(shè)備后,只有在安裝相應(yīng)的設(shè)備驅(qū)動程序之后才能使用。驅(qū)動程序?yàn)樯蠈榆浖峁┝嗽O(shè)備的操作接口,上層軟件只需要調(diào)用驅(qū)動程序提供的接口,而不用理會設(shè)備內(nèi)部操作。驅(qū)動程序的好壞直接影響著系統(tǒng)的性能。3、操作系統(tǒng)層嵌入式操作系統(tǒng)是嵌入式系統(tǒng)極為重要的組成部分,其通常包括與硬件相關(guān)的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面等。嵌入式操作系統(tǒng)可以分為實(shí)時操作系統(tǒng)(Real Time Operate System,RTOS)和分時操作系統(tǒng)。分時操作系統(tǒng)對軟件的執(zhí)行時間的要求并不嚴(yán)格,時間上的延誤或者時序上的錯誤一般不會造成災(zāi)難性的后果。實(shí)時操作系統(tǒng)首要任務(wù)是盡一切可能完成實(shí)時控制任務(wù),其次再著眼于提高計(jì)算機(jī)系統(tǒng)的使用效率。實(shí)時性需要調(diào)度一切可利用的資源完成實(shí)時控制任務(wù),著眼于提高計(jì)算機(jī)系統(tǒng)的使用效率,滿足對時間的限制和要求。實(shí)時系統(tǒng)是面向具體應(yīng)用,對外來事件在限定時間內(nèi)能做出反應(yīng)的系統(tǒng)。限定時間的范圍很廣可以從微秒級(如信號處理)到分級(如聯(lián)機(jī)查詢系統(tǒng))。對于操作系統(tǒng)層目前可能只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū)動工程師來完成。目前常用的嵌入式操作系統(tǒng) Windows CE微軟公司的Windows CE操作系統(tǒng)在1996年發(fā)布了第一個版本W(wǎng)indows CE 1.0起,到2005年發(fā)布Windows CE.NET5.0版本, 2006年發(fā)布 Windows CE 6.0。2007年起Windows CE更名為“Windows Embedded CE, 提供了新版“Windows Embedded CE 6.0 R2, 2009年發(fā)布 Windows Embedded CE 7.0,目前 Windows Embedded CE 的主要應(yīng)用領(lǐng)域?yàn)橹悄芙K端等消費(fèi)電子類產(chǎn)品. 此外,微軟公司的Windows Embedded產(chǎn)品線還有多種,各自面向POS,通信,工業(yè)控制、醫(yī)療等不同的嵌入式應(yīng)用領(lǐng)域?,F(xiàn)代的嵌入式操作系統(tǒng)與嵌入式操作系統(tǒng)的定制或配置工具緊密聯(lián)系,構(gòu)成了嵌入式操作系統(tǒng)的集成開發(fā)環(huán)境。就Windows CE來講,你無法買到Windows CE這個操作系統(tǒng),但可以買到Platform Builder for CE.NET 4.2的集成環(huán)境(簡稱PB),利用它可以裁減和定制出一個符合自己需要的Windows CE.NET 4.2的操作系統(tǒng)。因此,我們說的嵌入式操作系統(tǒng)實(shí)際上完全是由自己定制出來的,為在Windows CE上進(jìn)行應(yīng)用軟件開發(fā),微軟公司提供了Embedded Visual Basic(EVB)、Embedded Visual C+(EVC)、Visual Studio.NET等工具,它們是專門針對Windows CE操作系統(tǒng)的開發(fā)工具。把Windows CE操作系統(tǒng)中軟件開發(fā)包SDK導(dǎo)出后安裝在EVC下,就可以變成專門針對這種設(shè)備或者系統(tǒng)的開發(fā)工具了。VS.NET中的VB.NET和C#也提供了對以Windows CE為操作系統(tǒng)的智能設(shè)備開發(fā)的支持,但要求這些設(shè)備支持微軟公司的.NET Compact Framework.。 嵌入式Linux Linux從1991年問世到現(xiàn)在,已經(jīng)發(fā)展成為功能強(qiáng)大、設(shè)計(jì)完善的操作系統(tǒng)之一,不僅可以與各種傳統(tǒng)的商業(yè)操作系統(tǒng)分庭抗?fàn)?,而且在新興的嵌入式操作系統(tǒng)領(lǐng)域內(nèi)也獲得了飛速發(fā)展。嵌入式Linux是指對標(biāo)準(zhǔn)Linux經(jīng)過小型化裁減處理后,能夠固化在容量只有幾KB或者幾MB的存儲芯片或者單片機(jī)中,適合于特定嵌入式應(yīng)用場合的專用Linux操作系統(tǒng)。Linux能夠支持x86、ARM、MIPS、ALPHA、PowerPC等多種處理器體系結(jié)構(gòu),目前已經(jīng)成功移植到數(shù)十種硬件平臺,幾乎能夠運(yùn)行在所有流行CPU上。Linux有著異常豐富的驅(qū)動程序資源,支持各種主流硬件設(shè)備和最新硬件技術(shù),甚至可以在沒有存儲管理單元(MMU)的處理器上運(yùn)行。Linux內(nèi)核高效和穩(wěn)定已經(jīng)在各個領(lǐng)域內(nèi)得到了大量事實(shí)的驗(yàn)證,Linux內(nèi)核設(shè)計(jì)非常精巧,分成進(jìn)程調(diào)度、內(nèi)存管理、進(jìn)程通信、虛擬文件系統(tǒng)和網(wǎng)絡(luò)接口等五大部分,其獨(dú)特的模塊機(jī)制可以根據(jù)用戶的需要,實(shí)時地將某些模塊插入內(nèi)核或從內(nèi)核中移走。這些特性使得Linux系統(tǒng)內(nèi)核可以裁減的非常小巧,很適合嵌入式系統(tǒng)的需要。Linux是開放源代碼的自由操作系統(tǒng),它為用戶提供了最大限度的自由度。其軟件資源十分豐富,每一種通用程序在Linux上幾乎都可以找到。嵌入式Linux為開發(fā)者提供了一套完整的開發(fā)工具,它利用GNU的gcc做編譯器,用gdb、kgdb、xgdb做調(diào)試工具,能夠很方便的實(shí)現(xiàn)從操作系統(tǒng)內(nèi)核到用戶態(tài)應(yīng)用軟件各個級別的調(diào)試。Linux支持所有標(biāo)準(zhǔn)的Internet的網(wǎng)絡(luò)協(xié)議,并很容易移植到嵌入式系統(tǒng)中。此外,Linux還支持ext2、fat16、fat32、romfs等文件系統(tǒng)。由于上述這些優(yōu)良特性,目前,嵌入式Linux占據(jù)了很大的市場份額。常用的嵌入式Linux操作系統(tǒng)有:uCLinux、RTLinux、ETLinux、Embedix、XLinux等。 其他嵌入式操作系統(tǒng)其他嵌入式操作系統(tǒng)還有:uC/OS、eCOS、FreeRTOS、VxWorks、pSOS、Palm OS、Symbain OS等。對于操作系統(tǒng)層目前可能只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū)動工程師來完成。操作系統(tǒng)是負(fù)責(zé)系統(tǒng)任務(wù)的調(diào)試、磁盤和文件的管理,而嵌入式系統(tǒng)的實(shí)時性十分重要。據(jù)說,XP操作系統(tǒng)是微軟投入300人用兩年時間才搞定的,總工時是600人年,中科院軟件所自己的女媧Hopen操作系統(tǒng)估計(jì)也得花幾百人年才能搞定。因此這部分工作相對來講沒有太大意義。4、應(yīng)用層應(yīng)用層的基本任務(wù)是開發(fā)最終運(yùn)行在目標(biāo)機(jī)上的應(yīng)用軟件,如嵌入式游戲、家電控制軟件、多媒體播放軟件等。三、嵌入式工程師的目標(biāo)定位對于初學(xué)者必然要把握住方向,自己的目標(biāo)是什么,自己要在那一層面上走。然后認(rèn)真學(xué)習(xí)相關(guān)的知識,不管哪一層,學(xué)好了,學(xué)精了,都會很有前途的。1、嵌入式硬件工程師嵌入式硬件工程師要求具有較強(qiáng)的硬件設(shè)計(jì)能力,能夠根據(jù)應(yīng)用的需求,選擇適合的嵌入式處理器芯片,配置相應(yīng)的接口電路,為嵌入式應(yīng)用構(gòu)建一個硬件平臺。嵌入式硬件層的開發(fā)可能有兩種模式:模式一是基于EMPU(嵌入式處理器)、EMCU(嵌入式微控制器)或EDSP嵌入式處理器的開發(fā)設(shè)計(jì)。主要工作:根據(jù)應(yīng)用的需求,進(jìn)行接口的配置。硬件基礎(chǔ):微機(jī)原理、單片機(jī)原理、接口技術(shù)。軟件基礎(chǔ):要掌握SCH和PCB的輔助設(shè)計(jì)工具。我們的學(xué)生應(yīng)該具有這個模式下的硬件層的開發(fā)能力。模式二基于CPLD、FPGA或SoC(嵌入式片上系統(tǒng))的開發(fā)設(shè)計(jì)。主要工作:進(jìn)行邏輯電路的設(shè)計(jì)和接口的設(shè)計(jì)。硬件基礎(chǔ):數(shù)字邏輯電路基礎(chǔ)、微機(jī)原理、單片機(jī)原理、接口技術(shù)。軟件基礎(chǔ):要掌握輔助設(shè)計(jì)工具和硬件描述語言(VDHL)。SCH和PCB的輔助設(shè)計(jì)工具有Protel、ORCAD、PowperPCB等。Protel在國際上不通用,只是國內(nèi)通用,ORCAD和PowperPCB適用更廣一些。如果想走得高些或到臺資、日資、美資公司及國內(nèi)需要對外交流的大公司的話,應(yīng)該學(xué)習(xí)ORCAD或PowperPCB。CPLD常用的設(shè)計(jì)軟件有Alter公司的Maxplus2和Xilinx公司的ISE。CPLDCPLD(Complex Programmable Logic Device)復(fù)雜可編程邏輯器件,是從PAL和GAL器件發(fā)展出來的器件,相對而言規(guī)模大,結(jié)構(gòu)復(fù)雜,屬于大規(guī)模集成電路范圍。是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。其基本設(shè)計(jì)方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應(yīng)的目標(biāo)文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標(biāo)芯片中,實(shí)現(xiàn)設(shè)計(jì)的數(shù)字系統(tǒng)FPGAFPGA(FieldProgrammable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。FPGA與CPLD的辨別和分類FPGA與CPLD的辨別和分類主要是根據(jù)其結(jié)構(gòu)特點(diǎn)和工作原理。通常的分類方法是:將以乘積項(xiàng)結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為CPLD,如Lattice的ispLSI系列、Xilinx的XC9500系列、Altera的MAX7000S系列和Lattice(原Vantis)的Mach系列等。 將以查表法結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為FPGA,如Xilinx的SPARTAN系列、Altera的FLEX10K或ACEX1K系列等。盡管FPGA和CPLD都是可編程ASIC器件,有很多共同特點(diǎn),但由于CPLD和FPGA結(jié)構(gòu)上的差異,具有各自的特點(diǎn): CPLD更適合完成各種算法和組合邏輯,FPGA更適合于完成時序邏輯。換句話說,FPGA更適合于觸發(fā)器豐富的結(jié)構(gòu),而CPLD更適合于觸發(fā)器有限而乘積項(xiàng)豐富的結(jié)構(gòu)。 CPLD的連續(xù)式布線結(jié)構(gòu)決定了它的時序延遲是均勻的和可預(yù)測的,而FPGA的分段式布線結(jié)構(gòu)決定了其延遲的不可預(yù)測性。 在編程上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定內(nèi)連電路的邏輯功能來編程,FPGA主要通過改變內(nèi)部連線的布線來編程;FP GA可在邏輯門下編程,而CPLD是在邏輯塊下編程。 FPGA的集成度比CPLD高,具有更復(fù)雜的布線結(jié)構(gòu)和邏輯實(shí)現(xiàn)。 CPLD比FPGA使用起來更方便。CPLD的編程采用E2PROM或FASTFLASH技術(shù),無需外部存儲器芯片,使用簡單。而FPGA的編程信息需存放在外部存儲器上,使用方法復(fù)雜。 CPLD的速度比FPGA快,并且具有較大的時間可預(yù)測性。這是由于FPGA是門級編程,并且CLB之間采用分布式互聯(lián),而CPLD是邏輯塊級編程,并且其邏輯塊之間的互聯(lián)是集總式的。 在編程方式上,CPLD主要是基于E2PROM或FLASH存儲器編程,編程次數(shù)可達(dá)1萬次,優(yōu)點(diǎn)是系統(tǒng)斷電時編程信息也不丟失。CPLD又可分為在編程器上編程和在系統(tǒng)編程兩類。FPGA大部分是基于SRAM編程,編程信息在系統(tǒng)斷電時丟失,每次上電時,需從器件外部將編程數(shù)據(jù)重新寫入SRAM中。其優(yōu)點(diǎn)是可以編程任意次,可在工作中快速編程,從而實(shí)現(xiàn)板級和系統(tǒng)級的動態(tài)配置。 CPLD保密性好,FPGA保密性差。 一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯。超高速集成電路硬件描述語言(VHDL):VHDL語言是一種用于電路設(shè)計(jì)的高級語言,主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計(jì)算機(jī)高級語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對一個設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計(jì)的基本點(diǎn)。適合于:電子、通信、自動化、機(jī)電一體、信息工程類專業(yè)的學(xué)生。2、嵌入式驅(qū)動工程師嵌入式驅(qū)動層的開發(fā)可能有兩種模式:模式一:不兼容操作系統(tǒng)的驅(qū)動設(shè)計(jì),這是一種低層次的開發(fā)設(shè)計(jì)。模式二:兼容操作系統(tǒng)的驅(qū)動設(shè)計(jì),這是一種高層次的開發(fā)設(shè)計(jì)。一個優(yōu)秀的驅(qū)動工程師不僅要能看懂電路圖,還必須十分精通對操作系統(tǒng)內(nèi)核,以使其所寫的驅(qū)動程序能夠兼容操作系統(tǒng)。不至于在系統(tǒng)調(diào)用時,獨(dú)占操作系統(tǒng)時間片,而使其它任務(wù)不能運(yùn)行。比較適合:電子、通信、自動化、機(jī)電一體、信息工程類專業(yè)尤其是計(jì)算機(jī)偏體系結(jié)構(gòu)類專業(yè)的人來搞,除硬件層所具備的基礎(chǔ)學(xué)科外,還要對數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。3、嵌入式應(yīng)用工程師嵌入式應(yīng)用工程師的任務(wù)是根據(jù)應(yīng)用的需求,設(shè)計(jì)一個完整的應(yīng)用系統(tǒng)。要成為一個優(yōu)秀的嵌入式應(yīng)用工程師,必須動手做,踏踏實(shí)實(shí)地做一些課題,才會有進(jìn)步。按照設(shè)計(jì)的平臺不同,有多種不同的定位。3.1、基于硬件層的嵌入式應(yīng)用工程師基于硬件層的嵌入式應(yīng)用設(shè)計(jì)包括兩大內(nèi)容:一是硬件設(shè)計(jì):要根據(jù)應(yīng)用的需求,選擇適合的嵌入式處理器芯片,配置相應(yīng)的接口電路,為嵌入式應(yīng)用構(gòu)建一個硬件平臺。二是軟件設(shè)計(jì):開發(fā)最終運(yùn)行在目標(biāo)機(jī)上的應(yīng)用程序。技術(shù)基礎(chǔ):硬件基礎(chǔ):數(shù)字邏輯電路基礎(chǔ)、微機(jī)原理、單片機(jī)原理、接口技術(shù)。要掌握SCH和PCB的輔助設(shè)計(jì)工具。軟件基礎(chǔ):C語言程序設(shè)計(jì)、匯編語言程序設(shè)計(jì)要掌握程序設(shè)計(jì)的開發(fā)環(huán)境初學(xué)者的平臺選擇:1、基于51單片機(jī)2、基于ARM3.2、基于驅(qū)動層的嵌入式應(yīng)用工程師基于驅(qū)動層的嵌入式應(yīng)用設(shè)計(jì):技術(shù)基礎(chǔ):硬件基礎(chǔ):數(shù)字邏輯電路基礎(chǔ)、微機(jī)原理、單片機(jī)原理、接口技術(shù)。軟件基礎(chǔ):C語言程序設(shè)計(jì)、匯編語言程序設(shè)計(jì)初學(xué)者的平臺選擇:1、Stellaris(群星)系列微控制器硬件平臺:Stellaris(群星)系列微控制器周立功單片機(jī)發(fā)展有限公司的 EasyARM1138 EasyARM2103北京達(dá)盛科技有限公司的 EXP-LM3S811 EXP-LM3S6952Luminary Micro公司設(shè)計(jì)、經(jīng)銷、出售基于ARM CortexTM-M3的微控制器(MCU)。作為ARM的Cortex-M3技術(shù)的主要合伙人,Luminary Micro已經(jīng)向業(yè)界推出了首顆Cortex-M3處理器的芯片,用8/16位的成本獲得了32位的性能。Luminary Micro的Stellaris系列微控制器包含運(yùn)行在50MHz頻率下的ARM Cortex-M3 MCU內(nèi)核、嵌入式Flash和SRAM、一個低壓降的穩(wěn)壓器、集成的掉電復(fù)位和上電復(fù)位功能、模擬比較器、10位ADC、SSI、GPIO、看門狗和通用定時器、UART、I2C、運(yùn)動控制PWM以及正交編碼器(quadrature encoder)輸入。提供的外設(shè)直接通向管腳,不需要特性復(fù)用,這個豐富的特性集非常適合樓宇和家庭自動化、工廠自動化和控制、工控電源設(shè)備、步進(jìn)電機(jī)、有刷和無刷DC馬達(dá)、和AC感應(yīng)電動機(jī)等應(yīng)用。ARM Cortex-M3 處理器(Stellaris驅(qū)動庫)軟件開發(fā)平臺:RealViewMDKRealView MDK是ARM公司最先推出的基于微控制器的專業(yè)嵌入式開發(fā)工具。它采用了ARM 的最新編譯工具RVCT(RealView Compilation Tools),集成了Keil Vision集成開發(fā)環(huán)境(IDE),因此特別易于使用,同時具備非常高的性能。與ARM之前的工具包ADS 等相比,RealView 編譯器的最新版本可將性能改善超過20%。因此,RealView MDK是ARM軟件開發(fā)的首選工具。2、凌陽十六位單片機(jī)精簡開發(fā)板-61板隨著單片機(jī)功能集成化的發(fā)展,其應(yīng)用領(lǐng)域也逐漸地由傳統(tǒng)的控制,擴(kuò)展為控制處理、數(shù)據(jù)處理以及數(shù)字信號處理(DSP,Digital Signal Processing)等領(lǐng)域。凌陽的16位單片機(jī)就是為適應(yīng)這種發(fā)展而設(shè)計(jì)的。它的CPU內(nèi)核采用凌陽最新推出的nSPTM(Microcontroller and Signal Processor)16位微處理器芯片(以下簡稱nSPTM)。圍繞nSPTM所形成的16位nSPTM系列單片機(jī)(以下簡稱nSPTM家族)采用的是模塊式集成結(jié)構(gòu),它以nSPTM內(nèi)核為中心集成不同規(guī)模的ROM、RAM和功能豐富的各種外設(shè)接口部件,另外,nSPTM的指令系統(tǒng)提供具有較高運(yùn)算速度的16位16位的乘法運(yùn)算指令和內(nèi)積運(yùn)算指令,為其應(yīng)用增添了DSP功能,使得nSPTM家族運(yùn)用在復(fù)雜的數(shù)字信號處理方面既很便利,又比專用的DSP芯片廉價。3.3、基于操作系統(tǒng)層的嵌入式應(yīng)用工程師基于操作系統(tǒng)層的嵌入式應(yīng)用設(shè)計(jì):在操作系統(tǒng)環(huán)境下進(jìn)行應(yīng)用程序的開發(fā)設(shè)計(jì)。按照選用的操作系統(tǒng)不同,有不同的定位。3.3.1 基于Linux的嵌入式應(yīng)用設(shè)計(jì)3.3.2 基于WINCE的嵌入式應(yīng)用設(shè)計(jì)這個層次相對來講較為容易的,主要需要C語言或Jave程序設(shè)計(jì)能力。如果會在windows下如何進(jìn)行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應(yīng)的變化而已。初學(xué)者的平臺選擇:建議選擇: 友善之臂 mini2440+ LCD觸摸屏套件+512M存儲器硬件基礎(chǔ):數(shù)字邏輯電路基礎(chǔ)、微機(jī)原理、單片機(jī)原理、接口技術(shù)。軟件基礎(chǔ):C語言程序設(shè)計(jì)、匯編語言程序設(shè)計(jì)實(shí)際的嵌入式系統(tǒng)應(yīng)用軟件建立在系統(tǒng)的主任務(wù)(Main Task)基礎(chǔ)之上。用戶應(yīng)用程序主要通過調(diào)用系統(tǒng)的API函數(shù)對系統(tǒng)進(jìn)行操作,完成用戶應(yīng)用功能開發(fā)。在用戶應(yīng)用程序中,也可創(chuàng)建用戶自己的任務(wù)。任務(wù)之間的協(xié)調(diào)主要依賴于系統(tǒng)的消息隊(duì)列。實(shí)際構(gòu)建嵌入式系統(tǒng)時,并不一定需要操作系統(tǒng)和應(yīng)用編程接口API。即使使用,也可以根據(jù)應(yīng)用需求配置和剪裁。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫、基于嵌入式系統(tǒng)的網(wǎng)絡(luò)編程和基于某此應(yīng)用層面的協(xié)議應(yīng)用開發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復(fù)雜,并且有難度了。四、嵌入式應(yīng)用系統(tǒng)的開發(fā)步驟嵌入式應(yīng)用系統(tǒng)開發(fā)過程一般分為以下五個步驟:方案論證,硬件系統(tǒng)的設(shè)計(jì),系統(tǒng)軟件的設(shè)計(jì),系統(tǒng)仿真調(diào)試和脫機(jī)運(yùn)行。1、方案論證確定開發(fā)題目后,首先要進(jìn)行方案調(diào)研,這個過程至關(guān)重要,制定出一個好的方案,會使后面的開發(fā)工作較為順利。調(diào)研工作主要解決以下幾個問題: 了解用戶的需求,確定設(shè)計(jì)規(guī)模和總體框架?!耙詰?yīng)用為中心”是嵌入式系統(tǒng)的基本特點(diǎn),在開發(fā)設(shè)計(jì)嵌入式系統(tǒng)時,必須充分體現(xiàn)“以應(yīng)用為中心”這一特點(diǎn),這就需要充分了解用戶的需求。首先,必須明確要設(shè)計(jì)的系統(tǒng)是用來干什么的,需要具備哪些功能?由此可以設(shè)定系統(tǒng)由哪些功能模塊構(gòu)成,從而確定系統(tǒng)的設(shè)計(jì)規(guī)模和總體框架。其次,必須明確該系統(tǒng)的使用者是誰?他希望如何使用?畫出使用流程圖。由此可以確定系統(tǒng)的控制流程和軟件模塊。 摸清軟硬件技術(shù)難度,明確技術(shù)主攻問題。系統(tǒng)的設(shè)計(jì)規(guī)模和框架出來以后,明確了系統(tǒng)由哪些(軟硬件)功能模塊構(gòu)成,各個功能模塊的實(shí)現(xiàn)存在有哪些技術(shù)難度,從而明確了技術(shù)的主攻問題。 針對主攻問題開展調(diào)研工作,查找中外有關(guān)資料,確定初步方案。如果存在有技術(shù)的難度問題,就要通過查找資料、調(diào)研分析,確定解決的初步方案。 嵌入式應(yīng)用開發(fā)技術(shù)是軟硬件結(jié)合的技術(shù),方案設(shè)計(jì)要權(quán)衡任務(wù)的軟硬件分工。有時硬件設(shè)計(jì)會影響到軟件程序結(jié)構(gòu)。如果系統(tǒng)中增加某個硬件接口芯片,而給系統(tǒng)程序的模塊化帶來了可能和方便,那么這個硬件開銷是值得的。在無礙大局的情況下,以軟件代替硬件正是計(jì)算機(jī)技術(shù)的長處。 盡量采納可借鑒的成熟技術(shù),減少重復(fù)性勞動。2、硬件系統(tǒng)的設(shè)計(jì)嵌入式應(yīng)用系統(tǒng)的設(shè)計(jì)可劃分為兩部分:一部分是與微處理器直接接口的數(shù)字電路范圍的電路芯片的設(shè)計(jì)。如存儲器和并行接口的擴(kuò)展,定時系統(tǒng)、中斷系統(tǒng)擴(kuò)展,一般的外部設(shè)備的接口,甚至于 A/D、 D/A芯片的接口。另一部分是與模擬電路相關(guān)的電路設(shè)計(jì),包括信號整形、變換、隔離和選用傳感器;輸出通道中的隔離和驅(qū)動以及執(zhí)行元件的選用。應(yīng)用系統(tǒng)的設(shè)計(jì)應(yīng)注意以下幾個方面:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論