<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è) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

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

實(shí)時(shí)圖像處理、高速數據運算處理要求其系統具有對數據處理速度快、數據吞吐率高以及多任務(wù)處理功能。目前大多數方案都是采用HPI數據傳輸方式,將ARM和DSP進(jìn)行組合完成一些圖像處理,DSP處理器只是完成圖像采集、壓縮、編碼等簡(jiǎn)單的處理[1]工作,不能滿(mǎn)足實(shí)時(shí)的智能識別或大數據量運算的視頻處理要求。在應用領(lǐng)域方面也會(huì )因其處理速度問(wèn)題受到一定的限制。
例如,胎兒性別屏蔽項目中,要對實(shí)時(shí)視頻進(jìn)行性別部位的檢測和屏蔽,若采用單DSP則會(huì )出現漏幀或視頻不流暢;應用于高速運動(dòng)物體跟蹤時(shí),單DSP無(wú)法實(shí)現實(shí)時(shí)運動(dòng)物體跟蹤,例如漢王科技的運動(dòng)檢測和??低曔\動(dòng)檢測,都不能實(shí)時(shí)檢測,即使檢測也會(huì )出現漏檢現象和視頻不流暢。當處理4CIF或者更大圖像時(shí),單DSP的處理能力又會(huì )下降,雖然可以將圖像縮小進(jìn)行處理,但是縮小圖像則會(huì )丟失一些重要的圖像信息,使得智能識別準確率下降。
針對上述情況,設計一種能夠實(shí)現進(jìn)行快速信號處理和數據交換的實(shí)時(shí)圖像處理系統很有必要。
1 系統結構
1.1 結構

系統功能:利用S3C6410進(jìn)行數據整合、任務(wù)調度、人機交互;利用TMS320C6416進(jìn)行算法運算;每個(gè)DSP與FPGA都是無(wú)縫連接。設計中利用FPGA實(shí)現的FIFO進(jìn)行與DSP之間的高速數據傳輸以及ARM對多個(gè)DSP的任務(wù)調度處理等。
系統結構如圖1所示。系統由1個(gè)ARM11處理器S3C6410(主處理器)與4個(gè)TMS320C6416(720 Hz)(從DSP)通過(guò)FPGA(EP2C70~7)實(shí)現互聯(lián)的ARM+多DSP的嵌入式圖像處理系統。所有的DSP都通過(guò)外部存儲器接口(EMIF)與FPGA無(wú)縫相連,每個(gè)DSP之間的數據傳輸是通過(guò)FPGA內部互聯(lián)FIFO網(wǎng)絡(luò )實(shí)現。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

圖2所示是一種互聯(lián)的FIFO網(wǎng)絡(luò )結構和高速數據傳輸網(wǎng)絡(luò )結構。主處理器通過(guò)DMA數據訪(fǎng)問(wèn)模式與FPGA的雙口FIFO連接,從而實(shí)現與FPGA通過(guò)FIFO連接的所有從DSP進(jìn)行通信,所有FIFO都是雙向的,FIFO及其讀寫(xiě)控制邏輯都在FPGA內部實(shí)現。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

FPGA中的FIFO讀寫(xiě)狀態(tài)控制、各從DSP之間通信的同步握手信號、S3C6410處理器數據請求等邏輯信號,都是由每個(gè)DSP的一部分GPIO口與EP2C70的I/O口連接實(shí)現。
1.2 特點(diǎn)
系統結構具有可重構特性,在硬件平臺不變情況下,只需通過(guò)改變FPGA程序代碼就可以完全改變系統結構,以適應不同的算法結構。如圖2中屏蔽DSP1~DSP4之間的互相通信,即可組成主從并行的流水線(xiàn)結構;若需要串行的流水線(xiàn)結構,只需將DSP1~DSP4的其中一個(gè)與S3C6410通信即可;若需要設計更復雜的串并混合性結構,也只需改變FPGA的代碼就能夠很容易地實(shí)現。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

2 S3C6410的DMA與FPGA的軟FIFO
接口實(shí)現
2.1 S3C6410簡(jiǎn)介
S3C6410是三星公司的產(chǎn)品采用ARM1176JZF-S核,包含16 KB的指令數據Cache和16 KB的指令數TCM;ARM Core電壓為1.1 V時(shí),可以在553 MHz下運行。在1.2 V時(shí),可以在667 MHz下運行。通過(guò)AXI、AHB和APB組成的64/32 bit內部總線(xiàn)與外部模塊相連。SROM Controller:6個(gè)片選,支持SRAM、ROM和NOR Flash以及支持8/16 bit,每個(gè)片選支持128 MB。JPEG Codec:支持JPEG編解碼功能,最大尺寸為4 096×4 096。2D GRAPHICS:2D加速,支持畫(huà)點(diǎn)/線(xiàn),bitblt功能和Color Expansion。3D GRAPHICS:3D加速。
S3C6410可支持4個(gè)DMA控制器,用于系統總線(xiàn)內部或與外圍總線(xiàn)之間的數據交換,每個(gè)控制器包含8個(gè)通道,支持8/16/32 bit傳輸?,F以外部DMA請求為例簡(jiǎn)要介紹DMA的工作過(guò)程。圖3所示為DMA基本工作時(shí)序。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

當需要進(jìn)行DMA操作時(shí),外部DMA請求引腳XnXDREQ置為低電平。此時(shí)DMA控制器向CPU發(fā)出占用總線(xiàn)的請求,當總線(xiàn)請求成功后,XnXDACK引腳變?yōu)榈碗娖?,表示CPU已經(jīng)將總線(xiàn)使用權交給DMA控制器,可以進(jìn)行數據傳輸。當數據傳輸完成后,應答信號XnXDACK置為高電平,通知CPU完成一次DMA操作。
S3C6410提供了三種不同的DMA操作模式:?jiǎn)畏?wù)命令模式、單服務(wù)握手模式和全服務(wù)握手模式。在利用DMA進(jìn)行數據傳輸前必須對其相關(guān)寄存器進(jìn)行設置,包括源地址寄存器、目的地址寄存器和各自的控制寄存器以及配置DMA模式的控制寄存器等。
2.2 FPGA及其實(shí)現FIFO[2]
采用FPGA 實(shí)現多時(shí)鐘電路系統時(shí),需要處理不同的時(shí)鐘域之間速率匹配問(wèn)題,可利用FPGA內部生成的異步FIFO來(lái)處理。異步FIFO主要由雙端口RAM、寫(xiě)地址產(chǎn)生模塊、讀地址產(chǎn)生模塊、滿(mǎn)空標志產(chǎn)生模塊組成。雙端口RAM由FPGA的Block RAM塊構成,FPGA采用Atera公司的EP2C70-896C7,其Block RAM讀寫(xiě)時(shí)鐘頻率可以達到216.73 MHz,因此選用Block RAM作為存儲體,不僅速度快,而且設計簡(jiǎn)單。設計時(shí),一個(gè)端口配置成寫(xiě)端口,另一端口配置成讀端口,然后把Block RAM 的管腳與相對應的控制信號相接即可。讀寫(xiě)地址通過(guò)FPGA芯片內部的二進(jìn)制進(jìn)位邏輯產(chǎn)生,以對應Read_En/Write_En作為使能信號在讀/寫(xiě)時(shí)鐘的控制下進(jìn)行計數??栈驖M(mǎn)標志可以由讀或寫(xiě)地址的相對位置來(lái)獲得。本系統采用2個(gè)FIFO組成一路數據傳輸通道,雙向FIFO的設計圖如圖4所示。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

2.3 S3C6410的DMA與軟FIFO接口實(shí)現
根據DMA接口原理,設計S3C6410與FPGA之間的接口簡(jiǎn)圖如圖5所示。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統

讀時(shí)鐘由ARM的時(shí)鐘輸出引腳CLKOUT0提供。CLKOUT0根據S3C6410內部寄存器的設置可以輸出不同的時(shí)鐘頻率。FIFO輸出數據經(jīng)過(guò)以nGCS4為選通信號的緩沖器(Buffer)后接到S3C6410的數據總線(xiàn)上。nGCS4是S3C6410存儲空間中BNAK4的片選信號,當S3C6410對該信號對應存儲空間進(jìn)行讀寫(xiě)操作時(shí),BANK4為低電平,其余時(shí)間均為高電平。
  FIFO的寫(xiě)請求信號由S3C6410與FIFO的滿(mǎn)狀態(tài)共同控制。當S3C6410發(fā)出START信號并且FIFO未滿(mǎn)時(shí),寫(xiě)請求信號為高電平,FIFO在寫(xiě)時(shí)鐘的控制下寫(xiě)入數據;當START信號撤銷(xiāo)或者FIFO滿(mǎn)時(shí),寫(xiě)請求信號變?yōu)榈碗娖?,停止?xiě)操作。
  FIFO的讀操作與S3C6410的DMA操作配合進(jìn)行。系統采用單服務(wù)命令模式的DMA操作,每次傳輸一個(gè)字節的數據。當DREQ0信號變?yōu)榈碗娖綍r(shí),DMA操作開(kāi)始,每次傳輸一個(gè)字節后產(chǎn)生一個(gè)DACK0應答信號,而且只要DREQ0為低電平DMA操作就繼續進(jìn)行,直到DMA控制寄存器中的計數器為0,產(chǎn)生DMA中斷。根據上述時(shí)序特點(diǎn),將FIFO的空信號作為DMA的請求信號DREQ0。當CCD輸出的數據寫(xiě)入FIFO中時(shí),空信號跳變?yōu)榈碗娖絾?dòng)DMA操作,同時(shí)以DACK0信號作為FIFO的讀請求。每次DMA傳輸完成后應答信號使FIFO的讀指針移動(dòng)一位,以實(shí)現數據的快速準確采集。
3 圖像采集模塊
用可編程視頻輸入處理器SAA7113H進(jìn)行視頻信號處理。SAA7113H內部集成了強大圖像色度、亮度處理功能以及多種輸出模式[3];有32個(gè)工作寄存器,在系統復位時(shí),必須通過(guò)I2C總線(xiàn)對其進(jìn)行初始化。本系統使用灰度圖像,沒(méi)有使用色度信號,所以數據線(xiàn)為8 bit。SAA7113H與FPGA的接口如圖6所示。

基于A(yíng)RM+FPGA+多DSP的嵌入式實(shí)時(shí)圖像處理系統


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

評論


相關(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>