新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 一種多路圖像采集系統的軟件設計

        一種多路圖像采集系統的軟件設計

        作者: 時間:2011-07-08 來源:網絡 收藏

          4 幀存儲控制器與LCD/VGA顯示控制器的設計

          4.1 數據格式的轉換

          根據前面第2節的介紹,從ITU656解碼模塊出來的數據為8位4:2:2的YUV空間圖像數據,而LCD/VGA顯示器只能接收RGB數據。因為Y-CrCb4:2:2格式不能直接轉換為RGB,所以需要先轉換為YCrCb4:4:4格式。

          我們知道解碼芯片得到的視頻數據是順序為Cb,Y,Cr,Y,Cb,Y,Cr,……的序列,存儲的時候將一個Y與一個C(Cb或Cr)結合起來組成一個16位的數據。而當數據被讀出來時就要將這些視頻數據轉換為每個像素占24位(Y、Cb、Cr各占8位)的4:4:4的數據流。4:2:2到4:4:4的轉換采用最簡單的插值算法,在采樣的時候,每隔一個像素才采一次色度值(Cb和Cr)。在轉化時,直接將前一個有色度信息的像素點的Cr以及Cb的值直接賦給后一個像素的Cr和Cb,這樣就能得到4:4:4的像素數據,每個像素占用24位位寬。

          4.2 幀存儲控制器

          作為系統的重要組成部分,幀存儲控制器主要用來進行有效數據的緩存。視頻數據在FPGA1的控制下乒乓寫入兩片SRAM。乒乓技術應用的關鍵在于乒乓切換信號frame的產生,本系統中根據視頻解碼芯片的奇偶場信號RTS0來產生幀切換frame信號,也就是一個RTS0周期切換一次。一個RTS0周期由一個奇場和一個偶場組成,是一副完整的畫面。當frame為1是,FPGA通過計數器的計數截取最終顯示所需要的有效的像素點信息按照SRAM的控制時序寫入SRAM1,同樣當frame為0時,將對應的像素信息寫入SRAM2,如圖5所示。

        乒乓存儲示意圖

        圖5 乒乓存儲示意圖

          系統加電的同時,4片視頻解碼芯片同時工作,為了保證數據采集的準確性和顯示的同步性,系統內生成一個八倍于像素時鐘的寫時鐘信號write_clk,這樣,在一個像素時鐘周期,寫時鐘信號已經過了八個周期,而每兩個周期分別完成一路圖像數據的寫過程。

          由于SRAM是一維存儲空間,一個地址對應一個數據。所以在寫入數據時將SRAM的地址空間劃分為4段,每一段用來存儲一路圖像數據。

          用程序實現比較簡單,設置一個地址寄存器sram_addr_reg,將它賦給SRAM的地址控制信號sram_addr。然后在對每一路圖像寫入時,將對應的SRAM的起始地址加上一個固定的基數。如:


          這樣就保證了SRAM中對應地址的數據和屏幕上顯示位置的一一對應關系,在讀程序中,只需要按照順序讀SRAM即可,如圖6所示。

        SRAM地址驗證

        圖6 SRAM地址驗證



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 正蓝旗| 阳信县| 通渭县| 凌源市| 太仆寺旗| 招远市| 岢岚县| 宜城市| 乌恰县| 陈巴尔虎旗| 永清县| 阳泉市| 博客| 庄河市| 景东| 宁国市| 镶黄旗| 平罗县| 灵台县| 金塔县| 合山市| 泗阳县| 庆安县| 昭苏县| 南昌市| 三江| 淅川县| 拜城县| 郸城县| 元江| 温州市| 伊宁市| 庄河市| 沂水县| 武功县| 宝鸡市| 岳普湖县| 花莲市| 华阴市| 乌恰县| 海安县|