目前國內(nèi)對嵌入式系統(tǒng)一個普遍被認(rèn)同的定義是:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
嵌入式系統(tǒng)是電腦軟件與硬件的綜合體,它是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,從而能夠適應(yīng)實(shí)際應(yīng)用中對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。一臺通用計(jì)算機(jī)的外部設(shè)備中就包含了5~10個嵌入式微處理器,鍵盤、鼠標(biāo)、軟驅(qū)、硬盤、顯示卡、顯示器、Modem、網(wǎng)卡、聲卡、打印機(jī)、掃描儀、數(shù)碼相機(jī)、USB集線器等均是由嵌入式處理器進(jìn)行控制的。在制造工業(yè)、過程控制、通信、儀器、儀表、汽車、船舶、航空、航天、軍事裝備、消費(fèi)類產(chǎn)品等方面,嵌入式計(jì)算機(jī)都有用武之地。本文將介紹一種獨(dú)特的嵌入式平臺核心處理器--匯聚式處理器Blackfin以及其主流的配套操作系統(tǒng)及相關(guān)資源。
基于Blackfin構(gòu)建獨(dú)特的嵌入式平臺
匯聚式處理器Blackfin 基于由 ADI 和 Intel 公司聯(lián)合開發(fā)的微信號架構(gòu)(MSA),它將一個 32 位 RISC 型指令集和雙 16 位乘法累加(MAC)信號處理功能與通用型微控制器所具有的易用性組合在一起。這種匯聚式處理能力的組合使得Blackfin處理器能夠在信號處理和控制處理應(yīng)用中均發(fā)揮極佳的作用 -- 在許多應(yīng)用中免除了增設(shè)單獨(dú)的異構(gòu)處理器的必要,極大地簡化了硬件和軟件設(shè)計(jì)。Blackfin處理器非常適合于滿足會聚能力起關(guān)鍵作用的嵌入式音頻、視頻和通信應(yīng)用的計(jì)算要求和功耗約束條件,包括多格式音頻、視頻、語言和圖像處理,多模式基帶和分組處理,控制處理和實(shí)時安全性。正是這種獨(dú)特的系統(tǒng)架構(gòu)、所具有的設(shè)計(jì)靈活性和可擴(kuò)展性為Blackfin處理器贏得了廣泛的適應(yīng)性,例如數(shù)字家庭娛樂、網(wǎng)絡(luò)和流媒體、汽車遠(yuǎn)程信息處理和信息娛樂、數(shù)字無線電,以及移動電視終端。
目前,Blackfin 處理器在單內(nèi)核產(chǎn)品中可提供高達(dá) 756MHz 的性能,還提供了低至 0.8V 的業(yè)界領(lǐng)先的功耗性能,對于滿足當(dāng)今及未來的信號處理應(yīng)用而言,這種高性能與低功耗的組合特征是必不可少的。Blackfin 處理器都為嵌入式系統(tǒng)設(shè)計(jì)提供了十分重要的特性及性能優(yōu)勢,包括:同時實(shí)現(xiàn)各種應(yīng)用的高性能信號處理和高效控制處理能力;可確保產(chǎn)品開發(fā)時間最小化的易用型混合 16/32 位指令集架構(gòu)和開發(fā)工具套件;豐富的嵌入式系統(tǒng)設(shè)計(jì)的軟件模塊資源和內(nèi)置硬件資源(存儲器、PWM單元、廣泛的接口等);實(shí)現(xiàn)器件功耗模式與終端系統(tǒng)要求相適應(yīng)的動態(tài)電源管理能力。所有的 Blackfin 處理器均具有多個獨(dú)立的 DMA 控制器,這些控制器支持自動數(shù)據(jù)傳輸,而所需的處理器內(nèi)核開銷極少。此外,Blackfin處理器具有豐富的存儲器配置,可以極大地方便嵌入式系統(tǒng)的應(yīng)用開發(fā)。以ADSP-BF51x系列為例,該處理器同時具有NOR閃存、NAND閃存、鐵電存儲(FRAM)、SDRAM,還提供了支持Lockbox安全技術(shù)的一次性可編程存儲器。
ADI公司推出的Blackfin處理器是一類專為滿足當(dāng)今嵌入式音頻、視頻和通信應(yīng)用的計(jì)算要求和功耗約束條件而設(shè)計(jì)的新型 16~32 位嵌入式處理器。Blackfin 處理器基于由 ADI 和 Intel 公司聯(lián)合開發(fā)的微信號架構(gòu)(MSA),它將一個 32 位 RISC 型指令集和雙 16 位乘法累加(MAC)信號處理功能與通用型微控制器所具有的易用性組合在了一起。 這種處理特征的組合使得 Blackfin 處理器能夠在信號處理和控制處理應(yīng)用中均發(fā)揮上佳的作用 -- 在許多場合中免除了增設(shè)單獨(dú)的異類處理器的需要。該能力極大地簡化了 硬件和軟件設(shè)計(jì)實(shí)現(xiàn)任務(wù)。
?
操作系統(tǒng)在Blackfin上的組織結(jié)構(gòu)
廣泛優(yōu)化的操作系統(tǒng)資源
除了硬件平臺之外,嵌入式操作系統(tǒng)的選擇對于正在從事新的嵌入式開發(fā)項(xiàng)目的工程師來說同樣重要。對于Blackfin處理器來說,除了處理器本身的獨(dú)特性能特性優(yōu)勢外,強(qiáng)大的嵌入式操作系統(tǒng)資源是該處理器獲得廣泛應(yīng)用的另一個關(guān)鍵因素。Blackfin處理器支持包括VisualDSP自帶的操作系統(tǒng)內(nèi)核(VDK)、ThreadX、uCLinux和Nucleas等獲得業(yè)界廣泛應(yīng)用的操作系統(tǒng),避免了工程師在從其它處理器平臺移植到Blackfin平臺時因更改操作系統(tǒng)而延長終端產(chǎn)品開發(fā)周期。這些操作系統(tǒng)各自具有不同的特性和功能以及具有不同的價格、版權(quán)費(fèi)用條款。從特性上看,有代碼非常緊湊、復(fù)雜度低的操作系統(tǒng)(VDK),有復(fù)雜、具有豐富特性的操作系統(tǒng)(如uClinux),具有極高可靠性的INTEGRITY,專注于汽車市場需求的RTA-OSEK,等等 .下面將對以下幾類操作系統(tǒng)進(jìn)行簡要介紹。
?
Blackfin處理器支持的主要操作系統(tǒng)及第三方供應(yīng)商列表。
1. ThreadX
ThreadX是優(yōu)秀的硬實(shí)時操作系統(tǒng)(RTOS),適用于深嵌入式應(yīng)用中,具有規(guī)模小、實(shí)時性強(qiáng)、可靠性高、無產(chǎn)品版權(quán)費(fèi)、易于使用等特點(diǎn),并且支持大量的處理器和SoC,包括ARM、PowerPC、SH 4、MIPS、ADI DSP、TI DPS、Nios II等,因此廣泛應(yīng)用于消費(fèi)電子、汽車電子、工業(yè)自動化、網(wǎng)絡(luò)解決方案、軍事與航空航天等領(lǐng)域中。ThreadX已被廣泛的用戶接納,并且目前在超過4億5千萬電子產(chǎn)品中得到廣泛應(yīng)用。ThreadX配有Express LogicTCP/IP協(xié)議棧NetX、文件系統(tǒng)FileX、USB協(xié)議棧USBX以及GUI開發(fā)包PEGX,所有這些都支持Tensilica最新的Diamond Standard 106Micro產(chǎn)品。
Express Logic公司與ADI公司建立了深入的合作關(guān)系,針對ADSP-BF534、ADSP-BF536和ADSP-BF537處理器提供了優(yōu)化的實(shí)時操作系統(tǒng),針對Blackfin雙內(nèi)核處理器ADSP-BF561開發(fā)了增強(qiáng)版的ThreadX實(shí)時操作系統(tǒng)(ThreadX SMP RTOS),該產(chǎn)品大大簡化了開發(fā)商管理在雙內(nèi)核SMP嵌入式處理器上的編程任務(wù),為Blackfin處理器的雙內(nèi)核提供負(fù)載平衡,縮短了雙內(nèi)核平臺的開發(fā)過程(ThreadX SMP版本是消費(fèi)電子應(yīng)用中第一個真正的多處理器開發(fā)環(huán)境)。ThreadX實(shí)時操作系統(tǒng)可為Blackfin用戶提供實(shí)時、多線程應(yīng)用,Express Logic的picokernel結(jié)構(gòu)使該產(chǎn)品具有很高的性能和極小的代碼規(guī)模,最小采用4KB的獨(dú)立文件構(gòu)建所有系統(tǒng)服務(wù)。針對Blackfin處理器優(yōu)化的ThreadX還與ADI公司的VisualDSP++集成開發(fā)環(huán)境(IDE)的無縫集成,進(jìn)一步優(yōu)化了嵌入式系統(tǒng)開發(fā)環(huán)境。
2. uClinux
Linux是一種很受歡迎的操作系統(tǒng),它與UNIX系統(tǒng)兼容,開放源代碼。它原本被設(shè)計(jì)為桌面系統(tǒng),現(xiàn)在廣泛應(yīng)用于服務(wù)器領(lǐng)域。而更大的影響在于它正逐漸的應(yīng)用于嵌入式設(shè)備。uClinux正是在這種氛圍下產(chǎn)生的。在uClinux這個英文單詞中u表示Micro,小的意思,C表示Control,控制的意思,所以uClinux就是Micro-Control-Linux,字面上的理解就是"針對微控制領(lǐng)域而設(shè)計(jì)的Linux系統(tǒng)".uCLinux是一種優(yōu)秀的嵌入式Linux版本,是micro-Conrol-Linux的縮寫。它秉承了標(biāo)準(zhǔn)Linux的優(yōu)良特性, 經(jīng)過各方面的小型化改造,形成了一個高度優(yōu)化的、代碼緊湊的嵌入式Linux.雖然它的體積很小,卻仍然保留了Linux的大多數(shù)的優(yōu)點(diǎn):穩(wěn)定、良好的移植性、優(yōu)秀的網(wǎng)絡(luò)功能、對各種文件系統(tǒng)完備的支持和標(biāo)準(zhǔn)豐富的API.它專為嵌入式系統(tǒng)做了許多小型化的工作,目前已支持多款CPU. 其編譯后目標(biāo)文件可控制在幾百KB數(shù)量級,并已經(jīng)被成功地移植到很多平臺上。
uClinux操作系統(tǒng)可直接運(yùn)行于Blackfin處理器,對于很多嵌入式應(yīng)用來說,在與Blackfin處理器同等價位的方案中很少有能支持Linux的。然而,在面向特定的嵌入式應(yīng)用時,例如內(nèi)存空間有限或需要實(shí)時確定性以及高安全性能的應(yīng)用,Linux仍存在許多挑戰(zhàn)。工具鏈的改善、不斷演變的標(biāo)準(zhǔn)化努力等,都有助于提升Linux對于所有嵌入式應(yīng)用的價值。為此,ADI公司在uClinux里集成了大量硬件驅(qū)動和應(yīng)用例程,包括無線局域網(wǎng)驅(qū)動、音/視頻編解碼器驅(qū)動等,從而將幫助客戶非常方便地從原來的系統(tǒng)移植到Blackfin平臺上來。此外,ADI還與全球領(lǐng)先企業(yè)建立了廣泛的合作關(guān)系,為基于Linux的Blackfin嵌入式系統(tǒng)應(yīng)用開發(fā)提供了大量的優(yōu)化的操作系統(tǒng)應(yīng)用資源。ADI與公認(rèn)的uClinux先驅(qū)Arcturus Networks公司聯(lián)合推出的新型uCBF54x啟動開發(fā)工具套件和系統(tǒng)模塊就是這樣的一個范例。該開發(fā)套件可以加快具有多通道語音、mini PBX或IP視頻能力的嵌入式媒體設(shè)備的開發(fā)過程,提供的軟件包括開源uClinux BSP(板級支持包)以及Arcturus語音與管理中間件,包括完整的SIP和RTP堆棧。經(jīng)過多年積累,Blackfin Linux已經(jīng)成為嵌入式系統(tǒng)領(lǐng)域最為穩(wěn)定的嵌入式Linux發(fā)行包之一。
3. μC/OSII
μC/OSII作為一個源碼公開的嵌入式實(shí)時操作系統(tǒng),可以支持64個任務(wù),同時支持信號量、消息隊(duì)列、郵箱等多種常用的進(jìn)程間通信方式。該操作系統(tǒng)程序可讀性強(qiáng)、移植性好、可裁剪,并已在通信、電子、自動化等領(lǐng)域的嵌入式設(shè)備中獲得了大量的應(yīng)用。μC/OSII是Blackfin所支持的RTOS之一,在高速的Blackfin處理器上有很強(qiáng)的硬實(shí)時性能,操作系統(tǒng)中斷響應(yīng)時間約為110周期(600MHz下約0.18us),同樣針對Blackfin處理器的主要目標(biāo)應(yīng)用集成了大量硬件驅(qū)動模塊和各種庫資源。
如果上述的操作系統(tǒng)都不能滿足您的目標(biāo)應(yīng)用需求,那么您可以采用隨VisualDSP自帶的操作系統(tǒng)內(nèi)核(VDK)。VDK是一個小而健壯的內(nèi)核,支持當(dāng)前所有的Blackfin處理器以及未來可能出現(xiàn)的新Blackfin處理器產(chǎn)品,基于VDK的嵌入式系統(tǒng)開發(fā)能滿足在不同Blackfin處理器之間的API兼容性。更重要的是,使用VDK不需要支付任何額外的成本,無須支付許可證費(fèi)用或使用費(fèi),它是作為VisualDSP 的一部分提供的,會隨著VisualDSP 的升級而升級。VDK很好地整合到了VisualDSP中,在項(xiàng)目的靜態(tài)設(shè)置(如線程創(chuàng)建和信號量)管理非常方便,提供了很多的便利功能,包括線程、優(yōu)先級、信號量、消息傳遞、關(guān)鍵域和禁止調(diào)度域等
完善的軟件開發(fā)工具環(huán)境
隨著嵌入式處理應(yīng)用越來越復(fù)雜、投放市場的時間越來越急迫,完善的開發(fā)環(huán)境變得越來越重要。除了上述全系列優(yōu)化的嵌入式操作系統(tǒng)外,具有完整的開發(fā)環(huán)境是其受廣泛歡迎的重要原因之一。ADI提供業(yè)界一流的工具、初學(xué)套件與支持,包括熟知的、能夠支持其他Blackfin處理器的ADI CROSSCORE軟件與硬件工具,這些工具包括獲獎的VisualDSP++集成開發(fā)與調(diào)試環(huán)境、仿真器,以及EZ-KIT Lite評估版硬件。
此外,ADI還為嵌入式系統(tǒng)開發(fā)提供了大量的系統(tǒng)服務(wù)程序,即為嵌入式系統(tǒng)提供各種常見功能的軟件庫,這些服務(wù)程序?qū)嶋H上是可用于任何系統(tǒng)的公用程序,既可在未安裝RTOS的獨(dú)立式環(huán)境下運(yùn)行,又可用于VDK環(huán)境。利用這些系統(tǒng)服務(wù)程序,用戶可以便捷、高效地接入Blackfin處理器的硬件子系統(tǒng),具體而言包括鎖相環(huán)路、直接內(nèi)存存取、中斷控制器、標(biāo)志控制器和定時器等等。所有Blackfin處理器均采用一套通用的API,各種應(yīng)用和設(shè)備驅(qū)動程序均可使用這些系統(tǒng)服務(wù)程序。系統(tǒng)服務(wù)程序中包含的軟件都經(jīng)過反復(fù)測試、穩(wěn)定可靠的,用戶可以輕松直接使用這些程序。利用服務(wù)程序,用戶可以輕松整合這些模塊化軟件。服務(wù)程序?qū)⒇?fù)責(zé)管理硬件資源,因此,將不同開發(fā)人員編寫的兩個程序塊整合起來變得輕而易舉。這些服務(wù)程序都與VisualDSP++集成開發(fā)環(huán)境一起提供。
為改進(jìn)應(yīng)用開發(fā)環(huán)境,美國國家儀器有限公司(NI)與ADI聯(lián)合推出了專用于ADI Blackfin處理器的LabVIEW嵌入式模塊,將LabVIEW圖形化數(shù)據(jù)流的開發(fā)環(huán)境擴(kuò)展到高性能、低功耗的Blackfin處理器,通過無縫地集成到ADI VisualDSP++開發(fā)和調(diào)試環(huán)境,極大地方便進(jìn)行快速的嵌入式系統(tǒng)開發(fā)。使用NI LabVIEW嵌入式技術(shù)可以一步到位完成系統(tǒng)建模的硬件在環(huán)測試和原型設(shè)計(jì),幫助沒有嵌入式編程經(jīng)驗(yàn)的工程師克服嵌入式開發(fā)過程中遇到的傳統(tǒng)挑戰(zhàn),可以花更少的時間在細(xì)節(jié)的了解和傳統(tǒng)低層工具的語法上,從而可以把更多的時間用于設(shè)計(jì)優(yōu)化。這一圖形化的軟件包括140多種Blackfin特有的、經(jīng)過優(yōu)化的數(shù)學(xué)、分析和信號處理函數(shù),如音頻和視頻DAC、ADC和編解碼器等集成I/O.
盡管有優(yōu)化的操作系統(tǒng)可供選擇以及提供無縫集成的完善開發(fā)工具環(huán)境,但即使對于一個經(jīng)驗(yàn)豐富的設(shè)計(jì)工程師來說,嵌入式系統(tǒng)設(shè)計(jì)依然是一個極具挑戰(zhàn)性的工作。為幫助企業(yè)更快地利用Blackfin處理器完成優(yōu)化的產(chǎn)品設(shè)計(jì),加快產(chǎn)品面市時間并降低設(shè)計(jì)成本,ADI還與眾多本地技術(shù)提供商建立了緊密的合作關(guān)系,通過他們?yōu)槠髽I(yè)提供更具針對性、貼身的技術(shù)支持。這些第三方機(jī)構(gòu)除了提供針對特定應(yīng)用的完整參考設(shè)計(jì)外,還提供相應(yīng)的仿真器、集成開發(fā)環(huán)境,以及嵌入式開發(fā)培訓(xùn)等服務(wù)。這些機(jī)構(gòu)包括:嵌入式開發(fā)工具和培訓(xùn)提供商深圳英蓓特(提供ADSP開發(fā)工具 Embest EmLink仿真器 Embest BDT集成開發(fā)環(huán)境);針對多種應(yīng)用的嵌入式Linux開發(fā)平臺及OEM板級硬件方案的華恒科技(HHBF531-StartKit,uCLinux下全套開發(fā)工具集硬件驅(qū)動、協(xié)議棧等);提供嵌入式數(shù)字媒體開發(fā)工具的上海德景(DUITEK_BF_DEMO評估板);等等。
應(yīng)用案例--數(shù)碼相框設(shè)計(jì)
?
數(shù)碼相框方案結(jié)構(gòu)圖
上圖是上海世勤電子科技有限公司基于Blackfin處理器BF52x系列開發(fā)的數(shù)碼相框產(chǎn)品方案結(jié)構(gòu)圖,該產(chǎn)品具有互聯(lián)網(wǎng)WiFi無線連接、電子郵件發(fā)送、RSS新聞閱讀、即時照片分享、全觸摸操作等領(lǐng)先的性能特性。該方案采用了uClinux嵌入式操作系統(tǒng)。作為一款典型的消費(fèi)電子產(chǎn)品,滿足產(chǎn)品高性能要求的低成本實(shí)現(xiàn)方案是選擇的關(guān)鍵,Blackfin可以直接運(yùn)行于uClinux使得方案有效地降低了整體實(shí)現(xiàn)成本,而且極大地方便了將公司以往的設(shè)計(jì)軟件移植到新的系統(tǒng)中。事實(shí)上,在與BF52x處理器相近價格的同類解決方案中,很少有支持Linux的處理器。
評論
查看更多