<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 圖像處理難點(diǎn)分析及處理器選擇

          圖像處理難點(diǎn)分析及處理器選擇

          作者: 時(shí)間:2012-09-24 來(lái)源:網(wǎng)絡(luò) 收藏
          : normal; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(255,255,255); orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">  Blackfin系列的硬件架構(gòu)專門針對(duì)進(jìn)行優(yōu)化,多個(gè)DMA通道和可靈活配置的Cache能很好地解決大運(yùn)算量、高數(shù)據(jù)吞吐率的應(yīng)用要求。在應(yīng)用中,雖然對(duì)圖像數(shù)據(jù)進(jìn)行的傳輸也可由軟件實(shí)現(xiàn),但是這樣會(huì)消耗掉大量的CPU時(shí)鐘周期,從而使DSP的高速數(shù)據(jù)處理能力難以發(fā)揮。如果由DMA獨(dú)立負(fù)責(zé)數(shù)據(jù)傳輸,那么在系統(tǒng)內(nèi)核對(duì)DMA進(jìn)行初始設(shè)置并啟動(dòng)后,DMA控制器就可在無(wú)需內(nèi)核參與的情況下直接把圖像數(shù)據(jù)從PPI接口傳輸至SDRAM存儲(chǔ)器進(jìn)行存儲(chǔ)。另外,通過(guò)二維DMA還能簡(jiǎn)化宏塊進(jìn)出外部存儲(chǔ)器的傳送,從而允許數(shù)據(jù)控制成為數(shù)據(jù)實(shí)際傳送的一部分,這對(duì)色彩空間元素的交叉和解交叉來(lái)說(shuō)非常方便也非常重要。

            針對(duì)圖像處理應(yīng)用,Blackfin系列DSP還在不斷強(qiáng)化硬件功能模塊的支持,比如,ADSP-BF54x系列Blackfin的最新版本中增加了一個(gè)用于處理疊加圖像的硬件加速器和一個(gè)擴(kuò)展視頻接口,它使得色彩空間變換、縮放和圖像疊加等任務(wù)可以在無(wú)需參與計(jì)算的情況下完成,從而減輕了內(nèi)核的處理壓力,為進(jìn)行更高性能、更高速度的圖像處理提供了更多空間。

            軟件特性

            在指令集方面,Blackfin系列DSP針對(duì)圖像處理提供了豐富的向量指令和視頻指令。其中向量指令可以實(shí)現(xiàn)對(duì)16位數(shù)的操作(大多指令可以并行完成兩個(gè)16位數(shù)的操作)。由于圖像處理運(yùn)算中大多是針對(duì)16位數(shù)的操作,因此,通過(guò)合理使用這些向量指令來(lái)優(yōu)化圖像運(yùn)算非常重要。不僅Blackfin指令集中的大多數(shù)算術(shù)指令和移位指令都有對(duì)應(yīng)的向量指令,而且,向量指令中還有根據(jù)符號(hào)相加、32位數(shù)轉(zhuǎn)16位數(shù)等特殊指令。在對(duì)圖像預(yù)處理的匯編優(yōu)化中合理的應(yīng)用這些向量指令,可以提高算法的并行度,并大大加快運(yùn)算速度。

            視頻像素指令主要包括BYTEOP16P 、BYTEOP3P 、BYTEOPIP、SAA 、BYTEAPCK,以及BYTEUNAPCK等。一條視頻像素操作指令可以在一個(gè)周期內(nèi)完成4對(duì)視頻數(shù)據(jù)分量的加、減、加減混合、取平均值,或者相減并求絕對(duì)值等11種視頻像素運(yùn)算。由于視頻像素值一般都是按照8位存放的,所以使用視頻像素指令可以大大提高包括求SAD、像素插值、8位數(shù)和16位數(shù)直接轉(zhuǎn)換等在內(nèi)的各種視頻圖像運(yùn)算的速度。

            安全特性

            在安全性方面,ADI公司的Blackfin Lockbox Secure Technology通過(guò)提供一次可編程(OTP)存儲(chǔ)器與安全處理模式(Blackfin安全模式),將軟件與硬件保護(hù)相結(jié)合,為開(kāi)發(fā)人員提供實(shí)現(xiàn)以上安全措施的手段,其中,在OTP存儲(chǔ)器的公共、非安全、用戶可編程區(qū)域開(kāi)發(fā)人員可以用來(lái)存儲(chǔ)公共密鑰,這樣可以通過(guò)可控制與可配置的方式來(lái)鑒別系統(tǒng)。而在OTP存儲(chǔ)器的私有、安全、用戶可編程區(qū)域,開(kāi)發(fā)人員則可以設(shè)置私人密鑰等私有器件資產(chǎn),并保持這些器件資產(chǎn)的機(jī)密性與完整性。

            軟件模塊庫(kù)支持

            ADI公司提供多種針對(duì)圖像處理的軟件模塊,包括H.264 Baseline Profile Decoder模塊、能夠按比例縮放具有不同輸入及輸出尺寸圖像的增強(qiáng)視頻后處理(eVPP)模塊、JPEG編碼器模塊MPEG-2 Decoder Simple Main Profile Decoder庫(kù)、MPEG-4 Simple Profile Advanced Simple Profile Decoder庫(kù),以及MPEG-4 Simple Profile Advanced Simple Profile Video Encoder模塊等,它們都專門針對(duì)Blackfin處理器而優(yōu)化,并經(jīng)過(guò)業(yè)界嚴(yán)格驗(yàn)證。

            ADI公司還專門針對(duì)圖像處理應(yīng)用推出了"Image Tool Box"軟件包,該軟件包由一系列專用模塊組成,并針對(duì)圖像處理算法的一些常用和基本函數(shù)進(jìn)行了專門優(yōu)化,可以進(jìn)行圖像變換、圖像分析與圖像增強(qiáng)、二值圖像操作以及形態(tài)學(xué)處理等圖像處理操作。這款軟件包有利于降低工程師的開(kāi)發(fā)難度,加速上層算法的實(shí)現(xiàn)和優(yōu)化。

            開(kāi)發(fā)環(huán)境的支持

            用于Blackfin系列DSP處理器開(kāi)發(fā)應(yīng)用和工程管理的VisualDSP++開(kāi)發(fā)環(huán)境主要包括集成了ViusalDSP++內(nèi)核的集成編譯和調(diào)試環(huán)境(DIDE);帶實(shí)時(shí)運(yùn)行庫(kù)的CC/++優(yōu)化編譯器;匯編器和鏈接器,以及仿真軟件和程序例程等。其中,編譯器允許程序開(kāi)發(fā)人員用C或C++語(yǔ)言編寫信號(hào)處理和控制代碼,從而方便了系統(tǒng)的開(kāi)發(fā)和維護(hù)。圖形化的友好用戶信息交換界面使工程師能夠在窗口中進(jìn)行工程管理、編輯、編譯和調(diào)試程序,并在其間快速輕松地切換。此外,VisualDSP++開(kāi)發(fā)工具還與Green Hills軟件公司的MULTI環(huán)境、NI公司的LabVIEW軟件,以及MathWorks公司的MATLAB和Simulink軟件相兼容,為系統(tǒng)開(kāi)發(fā)和模塊復(fù)用提供了一個(gè)更加便捷、寬松的環(huán)境。

          三維掃描儀相關(guān)文章:三維掃描儀原理
          全息投影相關(guān)文章:全息投影原理

          上一頁(yè) 1 2 3 下一頁(yè)

          關(guān)鍵詞: 圖像處理 處理器

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();