新聞中心

        EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 一種多路圖像采集系統(tǒng)的軟件設(shè)計

        一種多路圖像采集系統(tǒng)的軟件設(shè)計

        作者: 時間:2011-07-08 來源:網(wǎng)絡(luò) 收藏

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

          4.1 數(shù)據(jù)格式的轉(zhuǎn)換

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

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

          4.2 幀存儲控制器

          作為系統(tǒng)的重要組成部分,幀存儲控制器主要用來進行有效數(shù)據(jù)的緩存。視頻數(shù)據(jù)在FPGA1的控制下乒乓寫入兩片SRAM。乒乓技術(shù)應(yīng)用的關(guān)鍵在于乒乓切換信號frame的產(chǎn)生,本系統(tǒng)中根據(jù)視頻解碼芯片的奇偶場信號RTS0來產(chǎn)生幀切換frame信號,也就是一個RTS0周期切換一次。一個RTS0周期由一個奇場和一個偶場組成,是一副完整的畫面。當(dāng)frame為1是,F(xiàn)PGA通過計數(shù)器的計數(shù)截取最終顯示所需要的有效的像素點信息按照SRAM的控制時序?qū)懭隨RAM1,同樣當(dāng)frame為0時,將對應(yīng)的像素信息寫入SRAM2,如圖5所示。

        乒乓存儲示意圖

        圖5 乒乓存儲示意圖

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

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

          用程序?qū)崿F(xiàn)比較簡單,設(shè)置一個地址寄存器sram_addr_reg,將它賦給SRAM的地址控制信號sram_addr。然后在對每一路圖像寫入時,將對應(yīng)的SRAM的起始地址加上一個固定的基數(shù)。如:


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

        SRAM地址驗證

        圖6 SRAM地址驗證



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 郁南县| 潼关县| 新和县| 高清| 洞口县| 临朐县| 汉阴县| 会泽县| 蓬安县| 东明县| 昭通市| 广州市| 临沭县| 秦皇岛市| 会宁县| 龙岩市| 桐庐县| 城市| 太保市| 贵州省| 天镇县| 远安县| 临夏县| 尚义县| 武定县| 西宁市| 离岛区| 南陵县| 循化| 清丰县| 太保市| 棋牌| 奇台县| 观塘区| 新源县| 剑阁县| 南雄市| 双鸭山市| 大余县| 鹤峰县| 太仆寺旗|