內(nèi)設(shè)水平計(jì)數(shù)器hcnt和鉛直計(jì)數(shù)器vcnt。由于顯示屏每個(gè)時(shí)鐘周期鎖存8個(gè)像素值,因此顯示1 024個(gè)像素值所需行周期為128個(gè)Tclk(行時(shí)鐘周期)。當(dāng)hcnt計(jì)數(shù)器值為HBP時(shí)表達(dá)行有效顯示區(qū)域結(jié)束,hcnt計(jì)數(shù)器值為HBP128時(shí)表達(dá)行有效顯示區(qū)域結(jié)束,hent計(jì)數(shù)器值為HSYN-Ccycle時(shí),完成一行顯示,vcnt計(jì)數(shù)器加1。當(dāng)vcnt計(jì)數(shù)器值為VBP時(shí),鉛直有效顯示區(qū)域結(jié)束,當(dāng)vcnt計(jì)數(shù)器值為VBP768時(shí),鉛直有效顯示區(qū)域結(jié)束,當(dāng)vcnt計(jì)數(shù)器值為VSYNC cycle時(shí),完成一幀圖像顯示。行場(chǎng)時(shí)序關(guān)系如圖3所示。
1.7 FFT模塊
FFTV 9.1 IP核采用Cooley-Tukey基-2 DIF算法,其FFT改換原始公式為:
因爲(wèi)采用了數(shù)據(jù)流模式,經(jīng)過(guò)變換的數(shù)據(jù)可以連續(xù)輸出,即輸出數(shù)據(jù)不會(huì)因爲(wèi)圖像數(shù)據(jù)的輸入而制止數(shù)據(jù)輸出,同時(shí)輸入數(shù)據(jù)也不也許因?yàn)樘幹煤蟮臄?shù)據(jù)正在輸出而制止繼續(xù)輸入,保證了數(shù)據(jù)轉(zhuǎn)換和傳輸?shù)倪B續(xù)性,提高了數(shù)據(jù)處置的速度和功效。因?yàn)镕FT通過(guò)異步FIFO向屏幕輸出數(shù)據(jù),而FIFO的讀數(shù)據(jù)是寫(xiě)數(shù)據(jù)的4倍速,假如讀時(shí)鐘和寫(xiě)時(shí)鐘都為100 MHz,那么有也許會(huì)在某一行里出現(xiàn)FIFO被取空,而無(wú)法向屏幕輸出有效數(shù)據(jù)的情況。為保證FIFO向屏幕輸出圖像數(shù)據(jù)的連續(xù)性,就要充分使用VBP,VFP,HBP和HFP的時(shí)間,在每一行的結(jié)束,如果FIFO沒(méi)滿,那么啟動(dòng)FFT進(jìn)行數(shù)據(jù)轉(zhuǎn)換。若圖像的辨別率為M×N同時(shí)在VBP期間FIFO已被寫(xiě)滿,則FIFO,F(xiàn)FT核、行場(chǎng)周期以及圖像辨別率間關(guān)系的計(jì)算公式如下:
式中:Deepth是異步FIFO的數(shù)據(jù)深度,單位為B;THSYNC cycle是行周期;Tclk是異步FIFO,F(xiàn)FT核、行場(chǎng)時(shí)序控制器模塊的驅(qū)動(dòng)時(shí)鐘周期。當(dāng)△>O時(shí),系統(tǒng)會(huì)連續(xù)實(shí)時(shí)地處理圖像;當(dāng)△0。
2 實(shí)驗(yàn)仿真結(jié)果和測(cè)量結(jié)果分析
圖4是采用Modelsim 6.5b進(jìn)行功能仿確實(shí)結(jié)果。使用QuartusⅡV9.1自帶的TimeQuest Timing Analyzer進(jìn)行時(shí)序約束后,在實(shí)驗(yàn)板上的場(chǎng)信號(hào)測(cè)量結(jié)果如圖5所示,場(chǎng)掃描頻率已達(dá)成368 Hz,經(jīng)測(cè)量其他引腳輸出信號(hào)也均滿足時(shí)序要求。由于FPGA器件資源限制,對(duì)圖像做了256點(diǎn)FFT改換,經(jīng)實(shí)驗(yàn)驗(yàn)證,該設(shè)計(jì)能夠?qū)崿F(xiàn)圖像的實(shí)時(shí)處置,代碼達(dá)成了預(yù)期設(shè)計(jì)結(jié)果。
3 結(jié)語(yǔ)
采用Himax的LCoS屏HX7308BTJFA作爲(wèi)顯示器件,其尺寸爲(wèi)14.43mm×10.69mm,大小可跟1枚1元硬幣相比擬,很容易實(shí)現(xiàn)三維投影微顯示。因VerilogHDL有很強(qiáng)的可移植性,便于以後對(duì)代碼的升級(jí)和維護(hù)。FPGA內(nèi)部資源畢竟有限,文中敘述可知,若顯示辨別率較大的圖像,光靠?jī)?nèi)部資源實(shí)現(xiàn)異步FIFO是不也許的,因此在此提出兩種方案:第一,換一片性能較高的芯片,滿足寫(xiě)FIFO速率等同讀FIFO速率的要求,這樣就能達(dá)到讀/寫(xiě)數(shù)據(jù)的動(dòng)態(tài)平穩(wěn),保證了圖像的連續(xù)顯示;第二,采用外部存儲(chǔ)器SDRAM存儲(chǔ)源圖像和FFT處理後的數(shù)據(jù),采用DDRII技術(shù)讀取數(shù)據(jù),使讀/寫(xiě)FIFO的速率匹配。受FPGA芯片資源限制,該設(shè)計(jì)采用辨別率爲(wèi)176×144的圖像進(jìn)行了系統(tǒng)功能驗(yàn)證,尚未實(shí)現(xiàn)圖像濾波以及FFT逆變換,未來(lái)可將代碼移植在高端的FPGA芯片上繼續(xù)開(kāi)發(fā)數(shù)據(jù)處理功能。