<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    視頻采集中DMA控制的流模式接口設計

    發布時間:2010-2-22 14:38    發布者:李寬
    關鍵詞: DMA , 采集 , 接口 , 模式 , 視頻
    引言

    隨著計算機技術、多媒體技術以及通信技術的發展,數字視頻技術得到了越來越廣泛的應用。在數字視頻技術的研究中,視頻數據傳輸是一個技術關鍵。本文針對視頻數據流數據量大、實時性要求高的特點,采用流模式傳輸,將視頻采集數據通過DMA從存儲資源緊張的片內緩存區搬運至片外SDRAM幀緩沖區,實現圖像的高速傳輸。

    利用SoPC(System on Programmable Chip)片上可編程系統技術,將處理器、多口SDRAM控制器、DMAC、I2C接口等模塊集成到一塊FPGA上,實現視頻圖像的采集、存儲、傳輸和顯示。采用自定制組件的辦法,將多口sDRAM控制器封裝成符合流模式規范的一個外設掛在Avalon總線上,非常方便DMAC進行數據的搬運,并大大提高了系統的性能。

    1 流模式傳輸規范

    流模式傳輸是Altera Nios II嵌入式系統中的一種高級Avalon總線傳輸方式。這種傳輸模式在流模式主外設和流模式從外設之間建立一個開放的信道,以提供連續的數據傳輸。這個信道使得只要存在有效數據就能進行數據的流動,主設備不需要不斷地對從外設的狀態寄存器進行訪問。這樣使得主從端口之間的數據吞吐量達到最大,同時也避免了從外設的數據上溢或下溢。流傳輸模式最適合DMA傳輸。一個只包含流控制信號和一個計數器的*基金項目:深圳市科技計劃資助項目(200708)。DMA 控制器就可以用來在一個從外設和一個存儲器之間連續地傳輸數據。



    本設計采用流傳輸模式的從端口讀傳輸和從端口寫傳輸的方法。從端口讀傳輸中,除了要設計接收主端口發出的clk信號、address信號、 read信號、chipselect信號和readdata信號之外,從外設還需要設置dataavailable信號有效來表示它能夠接收讀傳輸。從端口讀傳輸接口信號及其時序如圖1所示,由從外設發出的dataavailable有效時啟動流模式讀傳輸,數據通過DMA的搬運,開始連續不斷地由從外設流向主端口直至傳輸完成,傳輸的停止或中斷也由從外設來決定。同樣的道理,在寫傳輸中,要設計接收主端口發出的clk信號、address信號、 write信號等基本從端口寫傳輸信號之外,從外設則需要設置ready-fordata信號有效來表示它能夠接收寫傳輸,圖2為從端口寫傳輸接口信號及其時序。此外,讀傳輸和寫傳輸中的endofpacket信號取決于用戶設計。



    2 SoPC系統結構

    如圖3所示,SoPC系統以32位Nios II處理器為核心,將所有的接口模塊集成到一塊FPGA內。其中,多口SDRAM控制器作為一個自定制外設與其他通用外設(DMA控制器、SRAM控制器、Flash接口等)一同掛在Avalon總線上,并與圖像采集模塊、VGA顯示控制模塊以及12C通信模塊等一起構成SoPC視頻采集系統。本設計中,片外SDRAM容量較大,作為視頻數據源緩沖區以及顯示緩沖區;片外SRAM速度快但資源有限,可用于視頻處理緩沖區。從SDRAM(數據源)到 SRAM(處理緩沖區)以及從SRAM(處理緩沖區)到SDRAM(顯示緩沖區)的傳輸,則由DMAC采用流模式的方法來實現數據的搬運。



    3 流模式接口的設計

    (1)四口SDRAM控制器

    本系統采用片外SDRAM作為幀緩沖區,而對SDRAM使用的關鍵在于其控制接口的設計。在SoPCBuilder集成開發軟件中,可直接使用系統元件庫提供的單口SDRAM控制器,但是該控制器IP核無法滿足采集、傳輸和顯示同時進行的要求。因此,自定制了一個四口SDRAM控制器。如圖4所示,該四口SDRAM控制器中的2個端口用于流模式的讀和寫,另外2個端口一個作為圖像數據源輸入,還有一個作為VGA顯示輸出。



    由于數據采集、VGA監控、流模式傳輸數據流速度與SDRAM控制器存取不匹配,因此,對于這四口中的任何一個口,都用FIFO來對數據進行緩沖,以協調數據的同步而不至于錯位。而每個FIFO都有個水位檢測器,當水位到半滿時根據仲裁電路判斷的優先級啟用SDRAM讀寫命令,以100 MHz(系統時鐘頻率50 MHz)的頻率根據用戶給定的地址信號進行批量數據的存取,從而滿足了四口并用的要求。該SDRAM控制器的內部結構如圖5所示。



    (2)數據流的傳輸

    用DMA來搬運數據不僅速度非?,而且整個操作不需要CPU的干預,可把CPU從繁重的數據傳送中解放出來。DMA控制器將數據從源地址空間傳輸到目的地址空間,數據源或目的地可以是Avalon從外設(一個固定地址),也可以是存儲器的一段地址范圍。對DMA控制器的使用,需要Nios II處理器對源地址和目的地址進行初始化配置,同時也要預先給定傳輸長度以及傳輸模式等。本系統使用了Altera公司提供的HAL DMA設備驅動程序。該驅動程序把DMA傳輸抽象成兩種數據通道:數據發送通道和數據接收通道,如圖6所示。



    如此,便可通過Nios II用軟件控制DMA以流模式進行數據傳輸,具體搬運的數據路徑如圖7所示。其中緩沖區1是采集數據的源緩沖區。緩沖區2是傳輸后顯示緩沖區,緩沖區3是處理緩沖區。對視頻的處理不是本文討論的范圍,故這里只將原圖像傳回。



    (3)流模式接口的硬件設計

    對流模式接口的硬件設計實際上就是把上述四口SDRAM控制器封裝成一個Avalon自定制組件,且這個組件的其中兩端口滿足流模式讀寫規范。根據Avalon總線流模式傳輸規范,該自定制外設需要設置dataavailable、readyfordata信號有效表示已經準備好流模式傳輸,同時接收主設備發出clk、read/write、chipse-lect等信號,并根據這些信號對上述FIFO進行數據的存取。以下給出了該接口的部分 Verilog HDL代碼(u9、u10為FIFO的端口信號連接情況):




    (4)數據路徑的軟件控制

    作為自定義的組件,除了硬件接口以外,還需要編寫驅動層軟件(固件)。SoPC Builder生成的外設信息都保存在system.h文件里,固件的編寫主要是基于這個文件信息。



    對數據路徑的控制是通過Nios II軟件配置DMA控制器來實現的。這種軟硬件協同設計的辦法,既兼顧了傳輸的速度又兼顧了數據路徑的靈活性。對數據傳輸的設置,首先需要在SoPC Builder中設定DMA控制器的read_master和write_master,也就是數據搬運的源和目的地。具體設置如圖8所示。



    除此之外,還要在軟件上具體設置DMA傳輸的源地址、目的地址、傳輸長度以及傳輸模式等。這里給出部分調用HAL DMA驅動的軟件代碼:





    4 系統測試

    (1)流模式接口仿真

    Quartus II自帶的Signaltap II邏輯分析儀對自定制的流模式接口信號進行觀察,圖9為相關信號波形。經過分析,此波形與流模式的傳輸規范吻合。



    (2)系統測試

    整個SOPC系統在Altera DEl的Cyclone II FPGA上實現。采用友晶科技公司的攝像頭進行圖像數據源輸入,用VGA顯示終端進行輸出觀察,用DEl設計平臺和該SoPC視頻采集系統對某一場景進行拍攝截圖。結果表明,該流模式接口工作流暢。

    5 總結

    本設計采用以Nios II為核心的SoPC系統實現了視頻采集信號的流模式傳輸,并將其做成一個自定義外設,非常方便重復利用。另外,利用了DMAC硬件實現傳輸,且數據采集、存儲和顯示全硬件實現,速度非?;同時,可以將SRAM作為圖像處理緩沖區,將處理后的圖像讀回,這樣就搭建了一個圖像處理的硬件系統。當需要實現某種視頻處理的算法時,只需要修改圖像處理模塊,再放進系統中就可以實現。

    參考文獻

    1. 周立功 SoPC 嵌入式系統基礎教程 2006
    2. 孫凱.程世恒 Nios II系統開發設計與應用實例 2007

    作者:深圳大學 曾振興 龔向東 賀貝  來源:單片機與嵌入式系統應用2009(5)
    本文地址:http://www.portaltwn.com/thread-8401-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 利用模擬開發工具生態系統進行安全電路設計
    • 你仿真過嗎?使用免費的MPLAB Mindi模擬仿真器降低設計風險
    • 我們是Microchip
    • 貿澤電子(Mouser)專區

    相關在線工具

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷