視頻采集中DMA控制的流橫式接口設(shè)計
摘要 研究一種基于片上可編程系統(tǒng)(SoPC)技術(shù)的視頻數(shù)據(jù)傳輸方案。該方案自定制了一個四口SDRAM控制器,并將其中的兩口設(shè)計成符合流模式傳輸規(guī)范的接口,作為一個SoPC外設(shè)掛在AValon總線上,方便重復(fù)使用。另外,采用DMA控制以流傳輸模式進行數(shù)據(jù)搬運,不僅可解放CPU,而且速度快、控制靈活,解決了視頻處理中數(shù)據(jù)路徑的優(yōu)化問題。
關(guān)鍵詞 SoPC 流模式 SDRAM控制器 幀緩沖 DMA控制
引 言
隨著計算機技術(shù)、多媒體技術(shù)以及通信技術(shù)的發(fā)展,數(shù)字視頻技術(shù)得到了越來越廣泛的應(yīng)用。在數(shù)字視頻技術(shù)的研究中,視頻數(shù)據(jù)傳輸是一個技術(shù)關(guān)鍵。本文針對視頻數(shù)據(jù)流數(shù)據(jù)量大、實時性要求高的特點,采用流模式傳輸,將視頻采集數(shù)據(jù)通過DMA從存儲資源緊張的片內(nèi)緩存區(qū)搬運至片外SDRAM幀緩沖區(qū),實現(xiàn)圖像的高速傳輸。
利用SoPC(System on Programmable Chip)片上可編程系統(tǒng)技術(shù),將處理器、多口SDRAM控制器、DMAC、I2C接口等模塊集成到一塊FPGA上,實現(xiàn)視頻圖像的采集、存儲、傳輸和顯示。采用自定制組件的辦法,將多口sDRAM控制器封裝成符合流模式規(guī)范的一個外設(shè)掛在Avalon總線上,非常方便DMAC進行數(shù)據(jù)的搬運,并大大提高了系統(tǒng)的性能。
1 流模式傳輸規(guī)范
流模式傳輸是Altera Nios II嵌入式系統(tǒng)中的一種高級Avalon總線傳輸方式。這種傳輸模式在流模式主外設(shè)和流模式從外設(shè)之間建立一個開放的信道,以提供連續(xù)的數(shù)據(jù)傳輸。這個信道使得只要存在有效數(shù)據(jù)就能進行數(shù)據(jù)的流動,主設(shè)備不需要不斷地對從外設(shè)的狀態(tài)寄存器進行訪問。這樣使得主從端口之間的數(shù)據(jù)吞吐量達到最大,同時也避免了從外設(shè)的數(shù)據(jù)上溢或下溢。流傳輸模式最適合DMA傳輸。一個只包含流控制信號和一個計數(shù)器的*基金項目:深圳市科技計劃資助項目(200708)。DMA控制器就可以用來在一個從外設(shè)和一個存儲器之間連續(xù)地傳輸數(shù)據(jù)。
本設(shè)計采用流傳輸模式的從端口讀傳輸和從端口寫傳輸?shù)姆椒?。從端口讀傳輸中,除了要設(shè)計接收主端口發(fā)出的clk信號、address信號、read信號、chipselect信號和readdata信號之外,從外設(shè)還需要設(shè)置dataavailable信號有效來表示它能夠接收讀傳輸。從端口讀傳輸接口信號及其時序如圖1所示,由從外設(shè)發(fā)出的dataavailable有效時啟動流模式讀傳輸,數(shù)據(jù)通過DMA的搬運,開始連續(xù)不斷地由從外設(shè)流向主端口直至傳輸完成,傳輸?shù)耐V够蛑袛嘁灿蓮耐庠O(shè)來決定。同樣的道理,在寫傳輸中,要設(shè)計接收主端口發(fā)出的clk信號、address信號、write信號等基本從端口寫傳輸信號之外,從外設(shè)則需要設(shè)置ready-fordata信號有效來表示它能夠接收寫傳輸,圖2為從端口寫傳輸接口信號及其時序。此外,讀傳輸和寫傳輸中的endofpacket信號取決于用戶設(shè)計。
評論