基于FPGA的LED顯示屏控制方案
LED(Light Emitting Diode)大屏幕作為現(xiàn)代信息發(fā)布的重要媒體,正受到社會(huì)各界尤其是商業(yè)界和廣告界的極大重視,被廣泛應(yīng)用于工業(yè)、交通、商業(yè)、廣告、金融、體育比賽、模擬軍事演習(xí)、電子景觀等領(lǐng)域。隨著科技的進(jìn)步,全彩LED顯示屏(RGB三基色)逐漸得到普及應(yīng)用。
本方案采用Actel的FPGA實(shí)現(xiàn)對(duì)彩色LED屏的控制,對(duì)于系統(tǒng)的可靠性大大增強(qiáng),而且低成本的單芯片大大減輕了系統(tǒng)的成本。
1.概述
?。?)功能概述
選擇FPGA實(shí)現(xiàn)LED全彩屏的控制,主要考慮系統(tǒng)的性能需求,系統(tǒng)的升級(jí)需要以及系統(tǒng)的設(shè)計(jì)成本等因素?,F(xiàn)代社會(huì)對(duì)信息顯示效果的高要求,以及視頻數(shù)據(jù)量的加大,對(duì)顯示控制器提出了挑戰(zhàn),如圖 1所示。本文實(shí)現(xiàn)的LED全彩屏主要實(shí)現(xiàn)了以下功能:
● 保證全彩LED顯示屏顯示顏色不失真;
● 能夠?qū)崿F(xiàn)256級(jí)灰度;
● 能正確顯示文字、圖片、動(dòng)畫等信息;
● 可以接收PC機(jī)輸出的DVI數(shù)據(jù)流實(shí)時(shí)顯示。
圖1 LED顯示屏應(yīng)用示例
?。?)系統(tǒng)框圖
控制器主要完成對(duì)LED掃描板的控制和顯示,其中包括色度控制、灰度控制、數(shù)據(jù)重構(gòu)以及存儲(chǔ)形式、掃描方式的選擇等方面??刂破鞯墓δ芸驁D如圖 2所示。
圖2 LED顯示屏控制器功能框圖
2.各功能模塊介紹
控制器實(shí)現(xiàn)的主要難點(diǎn)在于其灰度的控制。利用人眼的視覺效應(yīng),我們知道,只要刷新頻率足夠高不產(chǎn)生LED器件閃爍的現(xiàn)象時(shí),LED器件點(diǎn)亮的時(shí)間越長(zhǎng),顯示的亮度就越強(qiáng)。為此我們將使用LED器件亮滅時(shí)間的占空比波形來(lái)控制灰度級(jí)別。下面我們分別介紹在8場(chǎng)掃描和19場(chǎng)掃描方式下的灰度控制。
?。?)8場(chǎng)掃描模塊
8場(chǎng)掃描方式是針對(duì)串行驅(qū)動(dòng)LED顯示屏而提出的。以最常見的8bit位寬的顯示數(shù)據(jù)來(lái)說(shuō),我們分8次顯示,第一次將8位數(shù)據(jù)的第0位顯示在LED屏上,第2次將8位數(shù)據(jù)的第1位顯示在LED顯示屏上,這樣重復(fù)操作,直至將8位數(shù)據(jù)全部顯示在LED顯示屏上。只要掃描的頻率足夠高,那么將8次顯示的效果疊加,就可以得到一個(gè)完整數(shù)據(jù)的數(shù)據(jù)顯示效果。我們把一個(gè)LED點(diǎn)陣屏所有的像素點(diǎn)對(duì)應(yīng)的同一數(shù)據(jù)位點(diǎn)亮一遍稱為一場(chǎng),8位數(shù)據(jù)共需8場(chǎng)才能顯示完,把這種方式稱為“8場(chǎng)掃描”。
“8場(chǎng)掃描”方式下,每一個(gè)數(shù)據(jù)位對(duì)應(yīng)的點(diǎn)亮?xí)r間如所示。我們?cè)O(shè)掃描一行的時(shí)間為T。從表 1可以看出,這種方式的點(diǎn)亮的效率是比較低的。
表1 數(shù)據(jù)對(duì)應(yīng)點(diǎn)亮?xí)r間
基于上述的8場(chǎng)掃描方式,如圖3所示,我們將8場(chǎng)掃描每一場(chǎng)分別對(duì)應(yīng)一個(gè)固定的占空比信號(hào),用于控制LED器件的亮滅。從分析可知,8位數(shù)據(jù)的每一位權(quán)值:1,2,4,8,16,32,64,128,就是每一場(chǎng)對(duì)應(yīng)的占空比因子,每一場(chǎng)占空比分別為:1/256,2/256,4/256,8/256,16/256,32/256,64/256,128/256。一個(gè)像素點(diǎn)的完整占空比值等于每一位0/1數(shù)據(jù)和對(duì)應(yīng)的權(quán)值乘積之和,計(jì)算可知這個(gè)比值剛好是從00到FF,這就構(gòu)成了256種灰度級(jí)別。
圖3 數(shù)據(jù)位灰度權(quán)值
?。?)19場(chǎng)掃描模塊
基于上一小節(jié)中介紹的“8場(chǎng)掃描”,我們知道8場(chǎng)掃描的嚴(yán)重缺點(diǎn)是點(diǎn)亮的效率比較低。所以,作為控制器的一個(gè)功能提升,我們?cè)O(shè)計(jì)了“19場(chǎng)掃描”的方式,這種方式延續(xù)了串行驅(qū)動(dòng)的思想,只是在數(shù)據(jù)位讀取方面做了一些改動(dòng)。
如圖 4所示,可以看出19場(chǎng)設(shè)計(jì)的原理是將數(shù)據(jù)的高位連續(xù)多顯示幾次,以提高數(shù)據(jù)的顯示亮度。19場(chǎng)掃描數(shù)據(jù)低5位時(shí)和8場(chǎng)掃描是一樣的,但第5位連續(xù)讀2次,第6位連續(xù)讀4次,第7位連續(xù)讀8次。
圖4 8場(chǎng)掃描和19場(chǎng)掃描的位地址
同時(shí)需要注意的一點(diǎn)是:在改變數(shù)據(jù)位顯示次數(shù)的時(shí)候,應(yīng)遵循不改變其顏色的占空比值為前提。通過(guò)計(jì)算證明19場(chǎng)掃描方式的每一個(gè)數(shù)據(jù)位讀取次數(shù)是比較合理的。19場(chǎng)掃描灰度控制和8場(chǎng)的灰度控制是一樣的原理,19場(chǎng)掃描方式下,雖然對(duì)一個(gè)8bit數(shù)據(jù)總共顯示了19次,但數(shù)據(jù)位依然是從第0位掃描到第7位,所以只要給固定的數(shù)據(jù)位加載其對(duì)應(yīng)的占空比信號(hào)來(lái)控制其灰度顯示就能符合要求。
?。?)控制器時(shí)鐘樹設(shè)計(jì)
本文中控制器因?yàn)榫C合了兩種掃描方式,每一種掃描方式的工作頻率又不一樣,所以整個(gè)控制器涉及了較多的工作頻率,也即跨時(shí)鐘域工作的現(xiàn)象很多,如圖 5所示,這里就充分利用了FPGA的時(shí)序邏輯資源。Actel FPGA的時(shí)鐘網(wǎng)絡(luò)相當(dāng)豐富,除了全局時(shí)鐘網(wǎng)絡(luò)以外,內(nèi)部還具有分段式的布線結(jié)構(gòu),可以使得FPGA內(nèi)部具有可以高達(dá)252個(gè)時(shí)鐘。
圖5 系統(tǒng)時(shí)鐘域分布圖
此外,由于控制器需要處理的數(shù)據(jù)比較龐大,根據(jù)FPGA的設(shè)計(jì)思想,采用乒乓操作實(shí)現(xiàn)對(duì)數(shù)據(jù)的存儲(chǔ),以提高數(shù)據(jù)的處理速度。在數(shù)據(jù)來(lái)源方面,控制器可以顯示內(nèi)部存儲(chǔ)的靜態(tài)圖像,也可以顯示外部輸入的數(shù)據(jù)。在處理前級(jí)系統(tǒng)傳輸來(lái)的數(shù)據(jù)的時(shí)候,就涉及到數(shù)據(jù)的接口問(wèn)題。根據(jù)FPGA的接口處理設(shè)計(jì)思想,采用FIFO作為數(shù)據(jù)的接口,以實(shí)現(xiàn)數(shù)據(jù)的同步。
3.市場(chǎng)應(yīng)用
LED顯示屏在信息發(fā)布場(chǎng)合已經(jīng)是很常見了,常被廣泛應(yīng)用于工業(yè)、交通、商業(yè)、廣告、金融、體育比賽、模擬軍事演習(xí)、電子景觀等領(lǐng)域,如圖 6所示。隨著對(duì)生活質(zhì)量的要求越來(lái)越高,LED顯示屏也可用于室內(nèi)裝飾、展廳顯示等,在未來(lái)LED顯示屏的應(yīng)用將會(huì)越來(lái)越廣泛,應(yīng)用Actel的FPGA可以為L(zhǎng)ED控制器提供最佳的方案。
圖6 LED顯示屏應(yīng)用實(shí)例
評(píng)論