數(shù)字網(wǎng)絡(luò)視頻監(jiān)控器中多路轉(zhuǎn)接邏輯的設(shè)計
輸入格式轉(zhuǎn)換模塊主要是完成四路信號從d1到cif格式的轉(zhuǎn)換,即從原來的720*576像素的分辨率轉(zhuǎn)換為352*288像素的分辨率。其轉(zhuǎn)換過程是把一幀中偶數(shù)行的數(shù)據(jù)全部去掉,每一行中按像素的順序一個隔一個的去掉,最后保留的數(shù)據(jù)就是原來1/4的數(shù)據(jù)。這個過程比較簡單,通過設(shè)計兩個行列計數(shù)器就能實現(xiàn)。其仿真圖如圖5所示。
圖5 d1到cif格式轉(zhuǎn)換的簡單仿真示意圖
圖5所示為在奇數(shù)行時數(shù)據(jù)一個空一個的有效,在一行讀完后,下一行就都設(shè)為無效。
接下來是內(nèi)部輸入緩沖模塊,此模塊用來控制與SDRAM控制相連接和進行數(shù)據(jù)緩存控制的模塊。其內(nèi)部邏輯圖如圖6所示。
圖6 FPGA內(nèi)部緩沖與內(nèi)部SDRAM控制器的連接邏輯圖
下面給出對此次設(shè)計以后可以擴展和改進的功能。
首先,因為這是四路的多路轉(zhuǎn)換緩沖,所以直接把它們固定組合起來送至網(wǎng)絡(luò)顯示終端。如果需要支持更多路的視頻信號輸入進行多路轉(zhuǎn)換,例如輸入信號是8路或16路,那么送入網(wǎng)絡(luò)的時候就有一個組合的問題,即在顯示器上四幅圖像最終顯示視頻輸入的哪四幅。這在實際情況下也是經(jīng)常出現(xiàn)的情況,例如在某個建筑物中安裝了8個攝像頭,在白天的情況下可能要監(jiān)視樓道內(nèi)的情況,而到晚上可能要監(jiān)視樓外門口的情況,這就需要在FPGA中進行一個選擇,所以,此時可以在FPGA中加入一個I2C從模塊,通過此模塊可以與處理器通信,在FPGA中設(shè)置一些寄存器,通過由I2C送來的不同的寄存器配置指令,就可以實現(xiàn)顯示器上圖像的實時切換。
其次,由于Cyclone系列的產(chǎn)品存儲容量比較有限,如果要增加到16路這樣的規(guī)模,輸入輸出緩沖的存儲容量必將不夠,所以此時可以考慮用Cyclone2系列的產(chǎn)品。
另外,如果以后要完成路數(shù)比較多的轉(zhuǎn)接,可以在監(jiān)控器板上多加幾塊TW2804和VW2010芯片,這樣就需要FPGA的輸入輸出引腳要足夠多,而EP1C6Q240C8這樣的FPGA芯片有240個引腳,足夠擴展需要。
總之,在這樣的轉(zhuǎn)接邏輯中用到Altera的Cyclone系列低成本的FPGA產(chǎn)品,充分利用了其現(xiàn)有的內(nèi)部資源,而且價格也是非常的易于接受,是非常理想的選擇。
本次設(shè)計項目是作者年初在龍芯產(chǎn)業(yè)化研發(fā)中心作客座研究生時獨立負責(zé)設(shè)計并實現(xiàn)的,其中此次視頻監(jiān)控器的CPU用的是龍芯2號,此轉(zhuǎn)接邏輯已成功設(shè)計完成。
評論