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