基于SoPC的實時視頻處理與顯示設(shè)計
視頻輸入模塊的結(jié)構(gòu)示意圖如圖6所示。經(jīng)過灰度變換YcrCb4:2:2格式視頻信號在像素時鐘控制下輸入FIFO緩沖器。彩條測試信號模塊在系統(tǒng)測試時,給出一個非常簡單的測試信號,可以模擬為信號源,以方便系統(tǒng)的調(diào)試。色度轉(zhuǎn)換模塊將YCrCb格式轉(zhuǎn)換為RGB格式,并把其值寫到FIFO緩沖器中。Avalon DMA把圖像數(shù)據(jù)寫到系統(tǒng)存儲器(SDRAM)中,當(dāng)完成一幀圖像需寫操作時,給Nios II處理器一個中斷信號。
在色度空間的轉(zhuǎn)換模塊中,采用FPGA片內(nèi)的資源,利用MegaCore構(gòu)造一個乘加器件完成運(yùn)算。根據(jù)轉(zhuǎn)換矩陣中YUV的比例關(guān)系,將信號放大一定的倍數(shù),使其接近一個整數(shù)值。YUV信號的最大值為255,但是10 bit DATA可以接收1 023亮度等級的調(diào)節(jié),所以這個比例可以放大4倍左右(如果超出1 023就按1 023的等級計算)。根據(jù)反復(fù)實驗最后得出,按照如下的運(yùn)算規(guī)則最接近轉(zhuǎn)換矩陣:
4 Nios II系統(tǒng)的生成
用SoPC Builder可以進(jìn)行系統(tǒng)模塊硬件設(shè)計和底層軟件生成。進(jìn)行硬件模塊設(shè)計時,SoPC Builder提供了圖形化配置界面,備有一些常用外設(shè)的IP模塊,如SDRAM、Flash RAM、UART、Interval timer、Parallel I/O等。Nios II軟核所含的組件如圖7所示。
在SoPC Builder自帶的IP核庫中并沒有I2C配置模塊、視頻輸入模塊和LCD controller模塊的IP核,這些模塊是根據(jù)寄存器特點以及功能要求自行設(shè)計的,并以IP核的形式通過Avalon總線連接到SoPC系統(tǒng)上。在建立了基于Nios II處理器的SoPC系統(tǒng)后,需要進(jìn)行一些系統(tǒng)設(shè)置才能生成最終的Nios II系統(tǒng)。因此,系統(tǒng)配置除了對外設(shè)設(shè)置外,還包括啟動程序、中斷向量表、系統(tǒng)啟動地址等的設(shè)置。
本文介紹了基于SoPC技術(shù)的視頻采集方案以及對視頻信號進(jìn)行灰度直方圖統(tǒng)計及灰度均衡化的實現(xiàn)。該方案結(jié)合SoPC技術(shù)在軟硬件可裁剪、可升級、可擴(kuò)充等優(yōu)點,大大縮短了系統(tǒng)整體設(shè)計周期,有很好的應(yīng)用前景和科研價值
評論