基于FPGA的大屏幕LED點陣顯示系統(tǒng)設計
摘要:本文用FPGA 設計 LED顯示屏接收控制系統(tǒng),著重研究系統(tǒng)硬件設計方案,進一步解決了 LED大屏幕數(shù)據(jù)的灰度控制、外擴存儲器的性能要求及實現(xiàn)方式。用 QuartusII 軟件開發(fā)各個模塊, QuartusII 軟件提供的人性化的界面操作,很多模塊都可以在系統(tǒng)內(nèi)直接實現(xiàn), 方便實用。
LED屏早在60年代就已出現(xiàn),但直到 90年代中期,才出現(xiàn)了全彩屏,該技術近年的價格已有了很大的降幅,分辨率也有了很大的改善。對于視頻來說,LED屏的低分辨率表現(xiàn)性能良好。平常看到 LED屏的分辨率與電腦顯示器的分辨率是差不多的。LED 彩色顯示大屏是室外顯示大屏中用的最多的,是公認的室外大型顯示屏中最值得發(fā)展的產(chǎn)業(yè),LED 屏以其高亮度、長使用壽命更勝一籌。與 LCD 相比,LED屏播放視頻時的響應速度更快,亮度更高。與電子發(fā)射顯示器相比,LED制造更簡單。與 OLED相比,LED技術更成熟??傊?,LED 顯示以其得天獨厚的優(yōu)勢占據(jù)了高分辨率視頻顯示市場。本文設計的基于FPGA的大屏幕LED點陣顯示系統(tǒng)處理數(shù)據(jù)更快、存儲量更大。 一、接收卡控制系統(tǒng)的總體方案設計
如圖 1所示,視頻數(shù)據(jù)通過 DVI 接口傳給 FPGA1,進行分辨率的切換和顯示區(qū)域的選擇以及信號的反伽碼矯正,通過網(wǎng)絡傳輸給接收卡的 FPGA2,通過 FPGA2 進行數(shù)據(jù)的緩存,灰度控制以及行掃描和列驅(qū)動功能。
接收卡接收的是 DVI 傳給 FPGA1,經(jīng) FPGA1 處理后的數(shù)據(jù)。在 FPGA2 內(nèi)部還要進 行數(shù)據(jù)處理,處理要達到的目標:(1)數(shù)據(jù)能在 LED 屏幕上分區(qū)顯示;(2)256 灰度級屏幕大小:256*800。
(一)灰度實現(xiàn)方案的選擇
采用專用驅(qū)動芯片 BHL2000來控制 LED顯示點陣,其內(nèi)部自動有灰度控制電路。
BHL2000是一塊專門用于 LED 掃描和驅(qū)動的高性能室外屏室內(nèi)屏通用的專用集成電路。BHL2000 芯片對 LED 點陣的灰度采用占空比的調(diào)制方式并接受 8 位并行灰度脈寬寬度與灰度數(shù)據(jù)值成正比,圖像數(shù)據(jù)存儲容量為 32*16*8 比特,數(shù)據(jù)輸入掃描與數(shù)據(jù)輸出掃描獨立,控制系統(tǒng)結構簡單。
專用芯片與通用芯片相比有它獨特的特點,專用驅(qū)動芯片內(nèi)部有SRAM,輸出時恒流控制。LED 顯示效果更好,灰度實現(xiàn)簡單,容易控制,為以后的擴展使用打下良好的基礎。
(二)存儲器方案設計
存儲器實現(xiàn)方案有六種:(1)FIFO 實現(xiàn);(2)雙口 RAM 實現(xiàn);(3)SDRAM 實現(xiàn)(4)SRAM 實現(xiàn);(5)FLASHROM 實現(xiàn)(6)FPGA 內(nèi)部開存儲器來實現(xiàn)。
根據(jù) LED 顯示屏所要實現(xiàn)的 800*256分辨率的指標,還有灰度級控制方式,選用 SRAM來實現(xiàn)接收數(shù)據(jù)的緩存。因為其容量大,速度快,地址方便控制,可以進行跳地址讀寫數(shù)據(jù),方便數(shù)據(jù)分區(qū)取出。
二、接收卡控制系統(tǒng)單元模塊設計
(一)時鐘控制模塊
1. 行計數(shù)時鐘和掃描控制信號
采用行掃描的,必須產(chǎn)生行掃描控制信號。如圖 2所示的row[4..0]是行掃描控制信號,用它接一個 2-4 譯碼器和四個 3-8 譯碼器來產(chǎn)生 32個行選信號,構成 1/32 掃描方式的顯示屏。Hclk為行計數(shù)時鐘,也可以稱為行鎖存時鐘。
圖2 行驅(qū)動模塊原理圖
2. 移位時鐘模塊
移位時鐘CP信號的產(chǎn)生,根據(jù)屏幕分辨率 256*800,刷新頻率為60HZ,掃描方式為 1/32,則移位頻率為 32*800*60=1.5MHZ。其中 32為掃描方式,32行共用一列驅(qū)動模塊。60為刷新頻率,所以移位時鐘 CP 用時鐘分頻電路來實現(xiàn)即可。
3. 灰度控制時鐘
由于采用 BHL2000專用驅(qū)動芯片,其灰度控制時鐘是通過計算由 FPGA產(chǎn)生的。根 據(jù)32*32 的點陣,其刷新頻率為 60HZ 則點頻為 60*32*32=60KHZ ,其行頻為點頻 /32=2KHZ ,所以灰度控制時鐘頻率為256*2k=512KHZ。
(二)存儲器控制模塊
根據(jù) LED顯示屏的大小,可以確定存儲器的容量和讀寫速度,存儲采用分色順序方式存儲。存儲最少存一幀的數(shù)據(jù),容量為 256*800=200KB,選六片容量為256K的SRAM 即可。由于調(diào)試時選用的是32*32的點陣屏,不需要這么大的容量,只是在 FPGA 內(nèi)部實現(xiàn)了SRAM,為了方便看 LED顯示的結果,就在 FPGA 實現(xiàn)了ROM,里面固定的存儲了一些信息,證明 LED的顯示是否和ROM 里的內(nèi)容一樣。
(三)顯示屏的驅(qū)動單元
1. 行驅(qū)動模塊 三、FPGA 開發(fā)流程
系統(tǒng)程序設計是采用的 Verilog語言輸入方式,設計所用的軟件為 QuartusII軟件。
Altera 公司的 QuartusII 設計軟件提供最全面的 FPGA, CPLD 和結構化 ASIC 設計流程,結合多種可直接進行設計應用的知識產(chǎn)權(IP)內(nèi)核,可以使設計效率 有很大提高。該軟件提供完整的多平臺設計環(huán)境,擁有 FPGA 和 CPLD 設計的所有 階段的解決方案,可以很好的滿足特定設計的需要。
本文作者創(chuàng)新點:大屏幕 LED點陣顯示系統(tǒng)采用可編程邏輯器件 FPGA來實現(xiàn),可以實現(xiàn)在系統(tǒng)可編程(ISP),用戶可以在自己設計的目標系統(tǒng)中或電路板上重構邏輯器件編程或反復改寫,從而實現(xiàn)了硬件設計與修改軟件化,縮短了開發(fā)周期,經(jīng)濟效益明顯,增加了設計靈活性,使得整個系統(tǒng)的性能得以進一步提高。