



下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于FPGA的圖像加速器的設(shè)計(jì)摘要介紹了一種基于FPGA的圖像加速器的設(shè)計(jì)。本文硬件加速器的實(shí)質(zhì)是通過(guò)流水線設(shè)計(jì)來(lái)減少多余的操作達(dá)到加速的目的的,內(nèi)存是由DMA控制器訪問(wèn),之后DMA輸出地址和控制信號(hào),在實(shí)際應(yīng)用中由于多個(gè)主設(shè)備可能同時(shí)訪問(wèn)內(nèi)存而引起沖突,因此需引入仲裁器,控制內(nèi)存的總線控制權(quán)由哪個(gè)主設(shè)備來(lái)控制,之后經(jīng)由邊緣檢測(cè)加速器來(lái)處理圖像,實(shí)驗(yàn)結(jié)果表明它可以實(shí)時(shí)、高效地完成圖像處理,這樣可以在圖像視頻處理上發(fā)揮很好的作用。關(guān)鍵字FPGA;硬件加速;圖像邊緣檢測(cè)1、引言在實(shí)際應(yīng)用中,為了完成信息的處理通常選取DSP或者ARM作為處理器.但隨著圖像越來(lái)越清晰所以對(duì)處理能力的要求很?chē)?yán)格,單個(gè)處
2、理器不能解決個(gè)別實(shí)時(shí)系統(tǒng)對(duì)圖像的處理,因此需要改變處理的方式,DSP+FPGA就是很好的解決策略,將壓縮算法中比較難處理的部分交給FPGA來(lái)處理,通過(guò)這種方式來(lái)達(dá)到硬件加速的目的。不僅僅是視頻壓縮,在許多其他嵌入式系統(tǒng),對(duì)硬件配置的要求很高,有時(shí)為了達(dá)到算法運(yùn)算速度的要求,安裝專(zhuān)用的嵌入式軟件,使用性能高的處理器芯片有時(shí)也無(wú)法達(dá)到性能要求,能達(dá)到,但是經(jīng)費(fèi)太高,均不得不設(shè)計(jì)專(zhuān)用硬件。2、總體架構(gòu)設(shè)計(jì)該架構(gòu)既支持cpu讀寫(xiě)memory,也支持cpu讀寫(xiě)acc,acc讀寫(xiě)memory,其中CPU為8位,地址總線16位,虛擬CPU(內(nèi)部不寫(xiě)指令,僅做一次長(zhǎng)整加速器的運(yùn)算)唯一的加速器設(shè)備:長(zhǎng)整加速器
3、,在獲得CPU授權(quán)(訪問(wèn)它的內(nèi)部寄存器)后,通過(guò)對(duì)Memory資源的直接訪問(wèn),完成64位無(wú)符號(hào)長(zhǎng)整的加減乘除算術(shù)運(yùn)算加速器運(yùn)算結(jié)束后,系統(tǒng)中的處理器和DMA設(shè)備訪問(wèn)內(nèi)存時(shí)共用訪問(wèn)通道,當(dāng)發(fā)生多個(gè)主設(shè)備一起訪問(wèn)內(nèi)存時(shí),就會(huì)不可避免的發(fā)生沖突。由仲裁器實(shí)施仲裁策略就必須被引入,通過(guò)中斷信號(hào)通知CPU仲裁器,將訪問(wèn)權(quán)限交給唯一的訪問(wèn)者,因此有別的主設(shè)備向處理器發(fā)出訪問(wèn)內(nèi)存的信號(hào)時(shí),由該處理器決定哪個(gè)設(shè)備可以訪問(wèn)內(nèi)存,進(jìn)行長(zhǎng)整型運(yùn)算時(shí),將源(Source)與目標(biāo)(Target)讀入加速器,執(zhí)行64位的運(yùn)算,之后將64位的運(yùn)算結(jié)果通過(guò)8位的數(shù)據(jù)總線寫(xiě)回目標(biāo)(Target)存儲(chǔ)器,該總體架構(gòu)設(shè)計(jì)如圖1所示
4、。3、算法分析3.1算法對(duì)比假設(shè)該算法核心在整個(gè)執(zhí)行周期所占用的時(shí)間比例為k。那么非核心算法的時(shí)間比例為(1-k),所以可以得到以下公式:t=kt+(1-k)t(1)假如該算法核心通過(guò)所設(shè)計(jì)的加速器把處理速度較原來(lái)的速度相比提高s倍,那么算法核心的處理時(shí)間就減少到原來(lái)的1/s,在整個(gè)執(zhí)行周期中非算法核心的處理時(shí)間不變??梢缘玫皆撍惴偟倪\(yùn)行時(shí)間為:t=kt/s+(1-k)t(2)算法核心沒(méi)有通過(guò)加速處理的時(shí)間除以加速后的處理時(shí)間可以得到該整體性能所提高的比例:S=(kt+(1-k)t)/(kt/s+(1-k)t)=1/(k/s+(1-k)(3)最后得到的公式叫Amdahl法則,Amdahl是以
5、GeneAmdahl的名字命名的,Amdahl是并行計(jì)算的先驅(qū)之一。該式表明算法核心在整個(gè)算法執(zhí)行時(shí)間中所占的比例很大程度影響核心算法通過(guò)加速處理所帶來(lái)的整體性能的提高。假設(shè)把該算法在嵌入式處理器上運(yùn)行的時(shí)間分成兩個(gè)不同的部分,并且執(zhí)行兩部分所花費(fèi)的時(shí)間可以估算出來(lái),也就是分成兩個(gè)核心(kernel)算法,一個(gè)占總時(shí)間的80%,而另一個(gè)只占總時(shí)間的20%。若用一個(gè)硬件加速器來(lái)加速算法核心,我們將第一個(gè)算法核心的運(yùn)行速度提高到原來(lái)的10倍,對(duì)第一個(gè)算法核心進(jìn)行加速處理所帶來(lái)的總體性能提升為:圖2算法模塊設(shè)計(jì)4、圖像邊緣檢測(cè)模塊的設(shè)計(jì)圖像邊緣檢測(cè)法的原理是中心像素點(diǎn)和它周?chē)陌藗€(gè)像素點(diǎn)都同時(shí)乘以一
6、個(gè)系數(shù)(通常是一個(gè)卷積表(convolutionmask)1/(0.8/10)+(1-0.8)=3.57(4)后相加的一個(gè)卷積過(guò)程,通過(guò)該過(guò)程來(lái)把每個(gè)像素點(diǎn)在每個(gè)方向上的導(dǎo)數(shù)值估計(jì)出來(lái)。該Sobel卷積表的Gx和Gy可以分別用于計(jì)(5)對(duì)第二個(gè)算法核心進(jìn)行加速處理帶來(lái)的總體性能提升為:1/(0.2/10)+(1-0.2)=1.253.2結(jié)果分析從結(jié)果對(duì)比可以看到,雖然第二個(gè)算法核心提高的運(yùn)算速度是第一個(gè)的10倍,但是由于它在原來(lái)總運(yùn)行時(shí)間里所占的比例較低,對(duì)其進(jìn)行加速處理也只能帶來(lái)較小的性能改善。而對(duì)第一個(gè)算法核心進(jìn)行加速處理會(huì)對(duì)總體性能產(chǎn)生更顯著的效果。所以我們?cè)陂_(kāi)始正式設(shè)計(jì)硬件時(shí)必須找到主
7、要矛盾,即占總運(yùn)行時(shí)間比例較高的部分,針對(duì)這部分算法程序進(jìn)行硬件加速器的設(shè)計(jì),以期望取得顯著效果,該算法設(shè)計(jì)模塊如圖2所示。算x和y方向的導(dǎo)數(shù)值。Dx和Dy是中心像素點(diǎn)和它周?chē)陌藗€(gè)像素點(diǎn)都同時(shí)乘以一個(gè)系數(shù)(通常是一個(gè)卷積表(convolutionmask)后相加,這樣就把x和y方向的偏導(dǎo)數(shù)值分別求了出來(lái)。最后,利用(6)式將中心像素點(diǎn)的導(dǎo)數(shù)求出來(lái)。計(jì)算公式如下式所示:IDI二.二-二為了得到導(dǎo)數(shù)幅值的最大值和最小值,對(duì)上式作如下簡(jiǎn)化:IDI=I二:I+I二I(7)圖3展示了每個(gè)操作步驟中的具體數(shù)據(jù),通過(guò)并行操作將原始圖像從上層像素開(kāi)始到底部像素的導(dǎo)數(shù)計(jì)算出來(lái)。對(duì)于系數(shù)值是0的部分積我們已經(jīng)省
8、略,因?yàn)樵摬僮鳑](méi)有任何意義。圖3sobel數(shù)據(jù)操作該架構(gòu)是獨(dú)立的圖像邊緣檢測(cè)硬件,原始圖像(亮度),儲(chǔ)存在memory中,忽略攝像頭與memory的寫(xiě)顯存操作,用偏導(dǎo)數(shù)的絕對(duì)值計(jì)算,仍然采用水平偏導(dǎo)Dx和垂直偏導(dǎo)Dy絕對(duì)值之和,全速流水作業(yè),加速作業(yè)時(shí),無(wú)任何空閑周期.5、系統(tǒng)仿真及結(jié)果測(cè)試使用Verilog語(yǔ)言編寫(xiě),利用Altera公司quartusll開(kāi)發(fā)軟件進(jìn)行設(shè)計(jì)調(diào)試,首先通過(guò)PhotoshopCS3對(duì)圖片的灰度進(jìn)行處理得到圖4,為方便處理將格式修改為bmp格式,在bmp格式選項(xiàng)中將位深度改為8位,之后通過(guò)Matlab軟件將圖4讀取并轉(zhuǎn)換成Verilog的存儲(chǔ)器初始化txt格式,在qu
9、artus的Sobel_Filter模塊輸出亮度倒數(shù)圖像txt文件,再通過(guò)Matlab轉(zhuǎn)換用閾值切換得到的邊緣圖像。在quartus中RTLView中可以清晰的看到各模塊的層次結(jié)構(gòu),如圖4。圖5波形仿真圖將mem_data波形的十六進(jìn)制數(shù)據(jù)與亮度導(dǎo)數(shù)圖像txt文件進(jìn)行對(duì)比數(shù)據(jù)沒(méi)有發(fā)生6錯(cuò)、誤結(jié)。論每計(jì)算一個(gè)像素的導(dǎo)數(shù)需要周?chē)?個(gè)像素的數(shù)值,計(jì)算全部像素必須與視頻播放同步,即計(jì)算一幀像素的時(shí)間必須小于等于視頻播放時(shí)一幀的時(shí)間(幀周期),即計(jì)算一個(gè)像素的平均時(shí)間必須小于等于視頻播放時(shí)一個(gè)像素的傳輸時(shí)間,“帶寬”的概念即是在一個(gè)像素的平均傳輸時(shí)間內(nèi)(100ns)完成導(dǎo)數(shù)計(jì)算所需要的時(shí)間比例?;蛘哒f(shuō),
10、是在一幀視頻播放周期內(nèi),完成導(dǎo)數(shù)計(jì)算諸操作所需要的時(shí)間比例如果每次單獨(dú)讀取全部9個(gè)像素,需要9X20ns=180ns視頻播放時(shí)每像素的平均傳輸時(shí)間只有100ns這樣,導(dǎo)數(shù)的計(jì)算就跟不上視頻的播放了,此時(shí),僅讀像素的操作就占據(jù)180/100=180%現(xiàn)在的做法是:首先分別讀入相鄰三行的一個(gè)字(32bit=4byte)這用去了三個(gè)讀周期,即3ng,X20ns=60ns,然后將行寄存器中的最左列的三個(gè)像素放入計(jì)算陣列中,然后流水線計(jì)算)出導(dǎo)數(shù)將行寄存器中左移動(dòng)一次將行寄存7“叱器最左端移入計(jì)算陣列,計(jì)算陣列同樣左移-一次,使用流水線計(jì)算出該導(dǎo)數(shù)將行寄存器中的第3列移入計(jì)算陣列,使用流水線計(jì)算出該導(dǎo)數(shù)
11、將行寄存器中的第4列移入計(jì)算陣圖4RTL級(jí)視圖最后開(kāi)始分析波形仿真圖,如圖5所示列,使用流水線計(jì)算出該導(dǎo)數(shù),到目前為止,完成4個(gè)像素的導(dǎo)數(shù)計(jì)算,使用了三個(gè)字的讀周期即60ns隨后繼續(xù)讀入三個(gè)字,重復(fù)上述過(guò)程,計(jì)算4個(gè)像素這樣平均400ns周期內(nèi),讀內(nèi)存+讀視頻+寫(xiě)導(dǎo)數(shù)=100ns,占100/400=25%剩余的75%可以用于其他操作。參考文獻(xiàn)崔屹數(shù)字圖像處理技術(shù)與應(yīng)用M.北京:電子工業(yè)出版社,1997劉真芳,王運(yùn)瓊,朱敏.數(shù)字圖像處理與分析M.北京:清華大學(xué)出版社,2006劉建清.從零開(kāi)始學(xué)CPLD和VerilogHDL編程技術(shù)M.北京:國(guó)防工業(yè)出版社,2006任曉東,文博.CPLD/FPGA高級(jí)應(yīng)用開(kāi)發(fā)指南M.北京:電子工業(yè)出版社,2003劉韜,樓興華.FPGA數(shù)字電子系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)實(shí)例導(dǎo)航M.北京:人名郵電出版社,2005王偉.Verilog程序設(shè)計(jì)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 頭發(fā)護(hù)理用品批發(fā)企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- 山羊批發(fā)企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- 智能照度計(jì)設(shè)計(jì)與應(yīng)用行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 銀行企業(yè)縣域市場(chǎng)拓展與下沉戰(zhàn)略研究報(bào)告
- 潤(rùn)滑脂類(lèi)批發(fā)企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 彩石批發(fā)企業(yè)縣域市場(chǎng)拓展與下沉戰(zhàn)略研究報(bào)告
- 2025年高吸收加脂劑項(xiàng)目合作計(jì)劃書(shū)
- 2025年牙科綜合治療機(jī)項(xiàng)目發(fā)展計(jì)劃
- 二零二五年度無(wú)產(chǎn)權(quán)車(chē)庫(kù)轉(zhuǎn)讓及車(chē)位使用權(quán)代持合同
- 二零二五年度道路施工噪聲污染防治合同
- 裝配式建筑裝配率計(jì)算評(píng)分表
- 1.1北京市基本概況與主要文旅資源《地方導(dǎo)游基礎(chǔ)知識(shí)》(第四版)PPT
- 畢業(yè)論文-基于MATLAB的扇形束投影CT重建
- 綜述的寫(xiě)作方法與技巧課件
- 零售藥店實(shí)施GSP情況的內(nèi)審報(bào)告
- 機(jī)械設(shè)計(jì)基礎(chǔ)網(wǎng)考題庫(kù)答案 吉林大學(xué)
- 新蘇教版科學(xué)六年級(jí)下冊(cè)全冊(cè)教案(含反思)
- 觸電事故應(yīng)急處置卡
- 國(guó)際貿(mào)易運(yùn)輸方式課件
- 南陽(yáng)理工學(xué)院畢業(yè)論文格式規(guī)范
- SolidWorks入門(mén)教程(很全面)PPT課件
評(píng)論
0/150
提交評(píng)論