<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于Blackfin處理器的嵌入式數碼相框設計[圖]

基于Blackfin處理器的嵌入式數碼相框設計[圖]

作者: 時(shí)間:2012-02-15 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:介紹了匯聚式的基本功能,給出了以系統硬件平臺,并采用uClinux操作系統和其中集成的大量硬件驅動(dòng)程序來(lái)具有互聯(lián)網(wǎng)WiFi無(wú)線(xiàn)連接、電子郵件發(fā)送、RSS新聞閱讀、即時(shí)照片分享、全觸摸操作等功能的方案。

本文引用地址:http://dyxdggzs.com/article/149687.htm

當今的應用已經(jīng)無(wú)處不在,無(wú)論是消費電子、通信終端,還是系統設備、工業(yè)控制、汽車(chē)電子系統或航空航天,都無(wú)處不見(jiàn)嵌入式應用的身影?,F在,全球每年生產(chǎn)數十億顆微,其中大部分都被廣泛應用于各類(lèi)嵌入式系統。

目前,在嵌入式系統硬件平臺方面,各種微控制器以及數字信號(DSP)產(chǎn)品,無(wú)論從品牌、功能特性方面,還是針對目標應用的成本、處理能力、功耗要求、集成度、開(kāi)發(fā)周期、技術(shù)難度等具體要求,都可以精心選擇出最具綜合優(yōu)勢的硬件核心平臺。而在嵌入式操作系統方面,無(wú)論是開(kāi)放源代碼的Linux陣營(yíng)的各種商業(yè)版本或免費版本,還是WinCE、vxWorks等“重量級”平臺,抑或針對特定應用優(yōu)化的Windows Mobile、Symbian、Android等,也同樣可以方便地選擇一款最佳的操作系統軟件平臺。

嵌入式系統的過(guò)程實(shí)際上就是一個(gè)軟硬件聯(lián)合協(xié)同開(kāi)發(fā)的過(guò)程。在進(jìn)行軟硬件平臺選擇評估時(shí),單純地離開(kāi)硬件去評估操作系統或離開(kāi)操作系統評估硬件平臺都有失偏頗,特別是對于很多非通用處理器來(lái)說(shuō)尤其如此。當前很多嵌入式硬件平臺都提供有針對目標應用優(yōu)化的操作系統及軟件模塊資源,一些商業(yè)化的操作系統也針對主流的硬件平臺進(jìn)行了優(yōu)化設計,而且提供了眾多的第三方優(yōu)化操作系統版本。這些資源對于嵌入式系統設計來(lái)說(shuō)具有重要的意義。為此,本文介紹了一種獨特的嵌入式平臺核心處理器,即匯聚式處理器及其主流配套操作系統和相關(guān)資源的應用與設計方法,給出了用其設計嵌入式的設計方案。

1 硬件處理器Blackfin的選擇

本設計選用匯聚式處理器Blackfin來(lái)構建獨特的嵌入式硬件平臺。匯聚式處理器Blackfin是由ADI和Intel公司聯(lián)合開(kāi)發(fā)的微信號架構(MSA),它集32位RISC型指令集、雙16位乘法累加(MAC)信號處理功能和通用型微控制器所具有的易用性于一體,這種匯聚式處理能力的組合使得Blackfin處理器能夠在旗號處理和控制應用中均發(fā)揮極佳的作用,并可在許多應用中免除增設單獨的異構處理器的必要,因而極大地簡(jiǎn)化了硬件和軟件設計。Blackfin處理器非常適合于以會(huì )聚為關(guān)鍵技術(shù)的嵌入式音頻、視頻、通信應用,包括多格式音頻、視頻、語(yǔ)言和圖像處理,多模式基帶和分組處理,控制處理和實(shí)時(shí)安全性處理等。正是這種獨特的系統架構所具有的設計靈活性和可擴展性為Blackfin處理器贏(yíng)得了廣泛的適應性,也使其廣泛應用于數字家庭娛樂(lè )、網(wǎng)絡(luò )和流媒體、汽車(chē)遠程信息處理和信息娛樂(lè )、數字無(wú)線(xiàn)電,以及移動(dòng)電視終端。

Blackfin處理器在單內核產(chǎn)品中可提供高達756MHz的性能,以及低至0.8V的低功耗電壓。所有的Blackfin處理器均具有多個(gè)獨立的DMA控制器,這些控制器可支持自動(dòng)數據傳輸,而且其所需的處理器內核開(kāi)銷(xiāo)極少。此外,Blackfin處理器還具有豐富的存儲器配置,可以極大地方便嵌入式系統的應用開(kāi)發(fā)。其中ADSP-BF51x系列處理器就同時(shí)具有NOR閃存、NAND閃存、鐵電存儲(FRAM)、SDRAM,同時(shí)還提供有支持Lockbox安全技術(shù)的一次性可編程存儲器。

Blackfin處理器架構完全符合SIMD標準,并帶有用于加速視頻和圖像處理的指令。該架構很適合于全信號處理/分析應用。由于Blackfin處理器具有最佳的代碼密度且只需進(jìn)行極少(或者完全不需要進(jìn)行)代碼優(yōu)化處理,因而不會(huì )遇到其他傳統處理器所常見(jiàn)的性能空間障礙。

2 uCLinux操作系統的選擇

嵌入式操作系統的選擇對于正在從事新的嵌入式開(kāi)發(fā)項目來(lái)說(shuō),它與選擇嵌入式硬件微處理器同樣重要。對于Blackfin處理器來(lái)說(shuō),除了處理器本身的獨特性能特性?xún)?yōu)勢外,強大的嵌入式操作系統資源也是嵌入式系統設計的一個(gè)關(guān)健因素。Blackfin處理器支持包括VisualDSP自帶的操作系統內核(VDK)、ThreadX、uCLinux和Nucleas等操作系統,這一特性可避免將操作系統從其它處理器平臺移植到Blackfin平臺時(shí),因更改操作系統而延長(cháng)的終端產(chǎn)品開(kāi)發(fā)周期。各種操作系統各自都具有不同的特性功能以及不同的價(jià)格、版權費用等條款。從特性上看,嵌入式操作系統有代碼緊湊、復雜度低的操作系統VDK,也有復雜而具有豐富特性的操作系統uClinux,同時(shí)具有可靠性極高的INTEGRITY,以及專(zhuān)注于汽車(chē)市場(chǎng)需求的RTA-OSEK等。通過(guò)對各種操作系統的功能分析,本設計最終選擇了uCLinux操作系統來(lái)進(jìn)行的設計。圖1所示是其操作系統在Blackfin上的組織結構。

圖1 操作系統在Blackfin上的組織結構

圖1 操作系統在Blackfin上的組織結構

Linux是一種獲得廣泛應用的嵌入式操作系統,在所有主流的嵌入式系統中,Linux操作系統無(wú)論是其超強的網(wǎng)絡(luò )功能、可任意裁剪、完全免費和通用的Linux API特點(diǎn),以及廣泛的開(kāi)放資源,都使其成為嵌入式應用中的重要力量。uClinux是針對微處理器應用的Linux系統,源碼完全開(kāi)放,同時(shí)針對嵌入式應用的特點(diǎn),uClinux對Linux的內核進(jìn)行了修改和重新編譯,因而內核更小。uClinux也包含Linux常用的API,并保留了原來(lái)Linux操作系統具有的高穩定性、強大的網(wǎng)絡(luò )功能和卓越的文件系統支持功能。

uClinux操作系統可直接運行于Blackfin處理器。對于很多嵌入式應用來(lái)說(shuō),在與Blackfin處理器同等價(jià)位的方案中,很少有能支持Linux的。事實(shí)上,在面向特定的嵌入式應用時(shí)(例如內存空間有限或需要實(shí)時(shí)確定性的高安全性應用),Linux仍然存在許多挑戰。而本設計的主要特點(diǎn)之一,是其所選擇的ADI公司的Blackfin處理器已在uClinux里集成了大量的硬件驅動(dòng)和應用例程,其中包括無(wú)線(xiàn)局域網(wǎng)驅動(dòng)、音/視頻編解碼器驅動(dòng)等,這些驅動(dòng)可幫助客戶(hù)非常方便地將應用程序從原來(lái)的系統移植到Blackfin平臺上來(lái)。此外,ADI與Arcturus Networ ks公司還聯(lián)合推出了新型uCBF54x啟動(dòng)開(kāi)發(fā)工具套件和系統模塊。該開(kāi)發(fā)套件提供的軟件包括開(kāi)源uCliunx BSP(板級支持包)以及Arcturus語(yǔ)音與管理中間件,同時(shí)包含完整的SIP和RTP堆棧。因此可以說(shuō),Blackfin Linux已經(jīng)成為嵌入式系統領(lǐng)域最為穩定的嵌入式Linux發(fā)行包之一。

3 軟件開(kāi)發(fā)工具環(huán)境

隨著(zhù)嵌入式系統產(chǎn)品應用越來(lái)越復雜、產(chǎn)品投放市場(chǎng)的時(shí)間越來(lái)越急迫,完善的開(kāi)發(fā)環(huán)境也變得越來(lái)越重要。除了全系列優(yōu)化的嵌入式操作系統外,具有完整的開(kāi)發(fā)環(huán)境也是其嵌入式系統開(kāi)發(fā)的重要因素之一。為此,ADI也提供有能夠支持其他Blackfin處理器的ADI CROSSCO RE軟件與硬件工具,這些工具包括VisualDSP++集成開(kāi)發(fā)與調試環(huán)境、仿真器,以及EZ-KIT Lite評估版硬件等。

此外,ADI也為嵌入式系統開(kāi)發(fā)提供了大量的系統服務(wù)程序,例如為嵌入式系統提供了各種常見(jiàn)功能的軟件庫,這些服務(wù)程序實(shí)際上就是可用于任何系統的公用程序,它們既可在未安裝RTOS的獨立式環(huán)境下運行,又可用于VDK環(huán)境。利用這些系統服務(wù)程序可以便捷、高效地接入Blackfin處理器的硬件子系統,包括鎖相環(huán)路、直接內存存取、中斷控制器、標志控制器和定時(shí)器等。所有的Blackfin處理器均可采用一套通用的AM,各種應用和設備驅動(dòng)程序也均可使用這些系統服務(wù)整序。這些系統服務(wù)程序中包含的軟件都已經(jīng)經(jīng)過(guò)反復測試,而且性能穩定可靠,設計時(shí)可以直接使用這些程序。此外,利用這些服務(wù)程序,也可以輕松整合這些模塊化軟件,實(shí)際上,這些服務(wù)程序都是與VisualDSP++集成開(kāi)發(fā)環(huán)境一起提供的。

為了改進(jìn)應用開(kāi)發(fā)環(huán)境,設計時(shí)可以用美國國家儀器有限公司(NI)與ADI聯(lián)合推出的專(zhuān)用于A(yíng)DI Blackfin處理器的LabVIEW嵌入式模塊,來(lái)將LabVIEW圖形化數據流的開(kāi)發(fā)環(huán)境擴展到高性能、低功耗的Blackfin處理器,以便通過(guò)無(wú)縫地將其集成到ADI VisualDSP++開(kāi)發(fā)和調試環(huán)境來(lái)快速地開(kāi)發(fā)嵌入式系統。使用NI LabVIEW嵌入式技術(shù)可以一步到位完成系統建模的硬件在線(xiàn)測試和原型設計。這一圖形化的軟件包括140多種Blackfin特有的、經(jīng)過(guò)優(yōu)化的數學(xué)、分析和信號處理函數,比如音頻和視頻DAC、ADC以及編解碼器等集成I/O。

4 嵌入式數碼相框的設計

圖2所示是一種Blackfin處理器BF52x開(kāi)發(fā)的嵌入式數碼相框的功能圖,該產(chǎn)品具有互聯(lián)網(wǎng)WiFi無(wú)線(xiàn)連接、電子郵件發(fā)送、RSS新聞閱讀、即時(shí)照片分享、全觸摸操作等功能特性。本設計采用uClinux嵌入式操作系統。作為一款典型的消費電子產(chǎn)品,Blackfin可以直接運行于uClinux,這使得該設計能夠有效地降低整體成本,并可十分方便地將以往的設計軟件移植到新的系統中。事實(shí)上,在與BF52x處理器相近價(jià)格的同類(lèi)解決方案中,目前還很少有支持Linux的處理器。

圖1 操作系統在Blackfin上的組織結構
圖2 數碼相框的設計方案圖
Blackfin處理器BF52x開(kāi)發(fā)的嵌入式數碼相框的功能十分齊全,因此,設計時(shí)可以根據產(chǎn)品的開(kāi)發(fā)周期和成本要求進(jìn)行取舍。圖3所示是一種Blackfin處理器BF52x設計的、功能相對比較簡(jiǎn)單的數碼像框的硬件結構圖。
圖3 簡(jiǎn)單的數碼像框的硬件結構圖
圖3 簡(jiǎn)單的數碼像框的硬件結構圖
由于Blackfin處理器BF52x,自身就帶有NOR閃存、NAND閃存、鐵電存儲(FRAM)、SDRAM等存儲器,因此,在需要進(jìn)一步外擴存儲器時(shí),完全可以利用其自身固有的應用程序,另外,如果希望使該數碼像框同時(shí)帶有音頻功能,也可以很容易的將NI公司LabVIEW圖形化數據流開(kāi)發(fā)環(huán)境擴展到高性能、低功耗的Blackfin處理器,再通過(guò)音頻和視頻DAC、ADC以及編解碼器等集成I/O,將存儲單元中的圖像文件中的音頻數據轉換為模擬信號,然后通過(guò)音頻系統還原成聲音輸出。至于USB接口和圖片數據文件的輸出顯示,無(wú)論是硬件還是軟件驅動(dòng)程序,目前都十分成熟而且簡(jiǎn)單。
5 結束語(yǔ)
本文利用ADI公司的匯聚式處理器Blackfin作為嵌入式系統的硬件平臺,并采用uClinux為操作系統,同時(shí)采用ADI針對目標應用在uClinux操作系統中集成的大量硬件驅動(dòng)(包括WiFi驅動(dòng)、音/視頻編解碼器的驅動(dòng)等)程序,給出了一種具有互聯(lián)網(wǎng)WiFi無(wú)線(xiàn)連接、電子部件發(fā)送、RSS新聞閱讀、即時(shí)照片分享、全觸摸操作等功能的嵌入式電子數碼相框的設計方案。事實(shí)上,由于本系統缺少存儲器管理單元(MMU),內存管理仍是嵌入式處理器需要進(jìn)一步解決的問(wèn)題之一,這樣,在BF52x平臺上移植Linux應用就仍然必須修改由于內存管理模式不同而帶來(lái)的問(wèn)題,而且工作量較大。這一點(diǎn)仍然是今后需要解決的一個(gè)技術(shù)問(wèn)題。 linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>