4.2?。玻担渡{(diào)色板設(shè)計(jì)
液晶屏有144種顏色,但對(duì)于圖形顯示屏而言,實(shí)際應(yīng)用中并不需要這么多種色彩,256色已經(jīng)可以滿足應(yīng)用要求。在FPGA 內(nèi)部,使用BlockRAM 建立了一個(gè)256色的調(diào)色板,每種色號(hào)對(duì)應(yīng)一個(gè)RGB顏色值。
如果每個(gè)像素都存儲(chǔ)RGB值,則每像素需要18位。而采用256色,每個(gè)像素點(diǎn)的顏色只需要用8位來(lái)表示,由此可見(jiàn),采用256色調(diào)色板的設(shè)計(jì)可以減小一半以上的內(nèi)存帶寬需求。
?。矗场【彺嬖O(shè)計(jì)
在進(jìn)行繪圖和字符、圖片等顯示操作時(shí),每次寫入SDRAM 內(nèi)存的數(shù)據(jù),不是立即寫入的。而是先將要操作的SDRAM 地址及其數(shù)據(jù)暫存在buffer中,由專門的模塊負(fù)責(zé)將其寫入SDRAM中。這樣的設(shè)計(jì)有兩個(gè)好處,一是減少了對(duì)存儲(chǔ)器的頻繁讀寫,存儲(chǔ)器讀寫效率提高;另一方面,繪圖模塊無(wú)需等待數(shù)據(jù)寫入,便可繼續(xù)進(jìn)行繪圖操作,大大提高了繪圖效率,從而提升了整個(gè)顯示模塊的性能。
4.4 高效率的SDRAM 控制器
用FPGA 實(shí)現(xiàn)的SDRAM 控制器[7-8],其核心是控制好SDRAM 讀寫命令給出的時(shí)機(jī),并定時(shí)刷新SDRAM,同時(shí)提供方便的用戶接口給其他模塊使用。
另外,由于SDRAM 的特性,進(jìn)行單字節(jié)操作時(shí),其效率很低。經(jīng)過(guò)分析,在65MHz時(shí)鐘下,寫入1個(gè)字節(jié),至少需要8?jìng)€(gè)時(shí)鐘周期,包括激活命令、寫命令、預(yù)充電命令以及等待時(shí)間,效率只有12.5%。
本設(shè)計(jì)中使用Burst操作,在Fullpage操作時(shí),其讀寫效率會(huì)大大提高,接近97%。
?。矗怠。疲蹋粒樱葦?shù)據(jù)校驗(yàn)機(jī)制
為了保證存儲(chǔ)在FLASH區(qū)域中數(shù)據(jù)的完整性,系統(tǒng)在每次啟動(dòng)時(shí),會(huì)發(fā)送相關(guān)的自檢命令檢查FLASH 數(shù)據(jù)的完整性,并將自檢信息顯示在液晶屏上,以保證字庫(kù)、圖片數(shù)據(jù)的正確性。
?。怠》抡婕皽y(cè)試結(jié)果
采用ModelSim6.2g對(duì)本設(shè)計(jì)進(jìn)行了功能和時(shí)序仿真,仿真了屏幕擦除、畫線、畫圓和字符顯示等指令的性能情況。如圖8中(a)、(b)圖所示,圖中,cmd信號(hào)為指令(詳見(jiàn)表1),start_FBM、start_PCG是指令操作時(shí)的起始信號(hào),圖中還給出了SDRAM 信號(hào)線。從圖中可以看到,cmd信號(hào)從0x00變到0x42表明開始進(jìn)行擦除操作,由0x42切換到0x35表明擦除操作結(jié)束,開始執(zhí)行畫線命令??梢钥吹皆谄聊徊脸僮鬟^(guò)程中SDRAM 信號(hào)線CS、RAS、CAS上信號(hào)不斷變化,此時(shí)SDRAM 執(zhí)行寫操作。

仿真結(jié)果表明,在65MHz時(shí)鐘頻率下,典型操作時(shí)間為:擦除整屏(640×480)耗時(shí)為2?。梗保埃鼎蹋?;畫一條長(zhǎng)度為100的斜線段,耗時(shí)為14.0μs;繪制一個(gè)直徑為10的圓,耗時(shí)為13.6μs;顯示一個(gè)16×16大小的點(diǎn)陣漢字,耗時(shí)為44.1μs。
本設(shè)計(jì)實(shí)現(xiàn)的液晶顯示模塊在典型應(yīng)用情況下,每秒約有250條繪圖命令,包含了屏幕擦除及大量畫線及字符串顯示操作。經(jīng)仿真測(cè)試,在該使用情況下,SDRAM 讀寫占用率約為21%。
在RS422數(shù)據(jù)總線滿負(fù)荷情況下,每秒最大接收10k字節(jié)數(shù)據(jù),最多為5k個(gè)漢字顯示,估算SDRAM 讀寫占用率約為30%,資源利用仍有足夠的余量。
由此可見(jiàn),采用本設(shè)計(jì)的液晶顯示模塊在典型工況和數(shù)據(jù)總線滿負(fù)荷情況下,均有足夠的余量能夠高效地完成上位機(jī)發(fā)送的作圖命令,不會(huì)造成顯示遲滯。
該液晶顯示模塊已應(yīng)用于飛行器儀表顯示系統(tǒng)中,并成功完成了飛行任務(wù)。
?。丁〗Y(jié) 論
采用基于FPGA 圖形和字符加速的液晶顯示模塊,可以較好地滿足航空航天領(lǐng)域中高可靠性儀表顯示設(shè)備中低性能微處理器作為主機(jī),而液晶顯示模塊作為顯示終端的應(yīng)用需求,減輕了處理器及顯示控制軟件的復(fù)雜度。當(dāng)然,本設(shè)計(jì)的部分性能指標(biāo)還有待提高,為了適應(yīng)高分辨率、大尺寸TFT液晶屏的要求,需要提高FPGA 運(yùn)行頻率,同時(shí)采用DDR/DDR2SDRAM 等高速存儲(chǔ)器件。
電子發(fā)燒友App


















評(píng)論