基于FPGA的彩色TFT-LCD控制電路設(shè)計(jì)及其ASIC實(shí)現(xiàn)
3.2 有限狀態(tài)機(jī)模塊
本文引用地址:http://cafeforensic.com/article/266853.htm有限狀態(tài)機(jī)由兩個(gè)16位的行列計(jì)數(shù)器組成,狀態(tài)變量為模式寄存器的狀態(tài)/復(fù)位位。在工作模式下,兩個(gè)計(jì)數(shù)器循環(huán)計(jì)數(shù)。當(dāng)行計(jì)數(shù)器狀態(tài)與起始行寄存器相同時(shí),行有效信號(hào)變高,表示該幀圖像的顯示開始,此時(shí)數(shù)據(jù)處理器模塊開始工作。在系統(tǒng)復(fù)位或行計(jì)數(shù)器狀態(tài)與終止行寄存器相同時(shí),行計(jì)數(shù)器被復(fù)位。在行有效信號(hào)變高后,當(dāng)列計(jì)數(shù)器狀態(tài)與起始列寄存器相同時(shí),像素有效信號(hào)變高,表示該行的有效顯示開始,此時(shí)數(shù)據(jù)處理器開始輸出每個(gè)像素的顏色數(shù)據(jù)。在系統(tǒng)復(fù)位或列計(jì)數(shù)器狀態(tài)與終止列寄存器相同時(shí),列計(jì)數(shù)器被復(fù)位。
3.3 數(shù)據(jù)處理器模塊
數(shù)據(jù)處理器模塊如圖5所示。它由三部分組成:DMA接口及其數(shù)據(jù)緩沖器、色空間反變換電路和溢出處理電路。根據(jù)系統(tǒng)設(shè)計(jì)要求,由電荷耦合器件(CCD)圖像傳感器采樣得到的原始圖像經(jīng)過像素處理器模塊的內(nèi)插和色空間變換后,成為了YCbCr格式的圖像,根據(jù)JPEG標(biāo)準(zhǔn),從RGB到 YCbCr的色空間變換遵循公式[3]
Y=0299R+0587G+0.114B
Cb=_0.169R-0.331G+0.5B (1)
Cr=0.5R-0.4186F-0.0814B
同時(shí)為了存儲(chǔ)方便,將變換得到的Y信號(hào)減去了128,這樣三種信號(hào)的值均在-128到+127之間,從而都可以用8位的帶符號(hào)數(shù)表示。在存儲(chǔ)YCbCr 信號(hào)時(shí)像素處理器模塊將相鄰像素的色度信號(hào)取均值然后進(jìn)行復(fù)用,這樣節(jié)省了存儲(chǔ)空間。所以在圖像存儲(chǔ)器中相鄰兩個(gè)像素的亮度信號(hào)組合成一個(gè)16位的數(shù)據(jù)存放在一個(gè)存儲(chǔ)單元里,而復(fù)用的色度信號(hào)則存放在下一個(gè)地址的單元里[3] 。當(dāng)要用液晶顯示器進(jìn)行圖像顯示時(shí),先通過連續(xù)兩次DMA的讀操作獲得兩個(gè)像素的亮度信號(hào)和色度信號(hào),分別放入16位的數(shù)據(jù)緩沖器1和2,然后在讀取新的兩個(gè)相鄰像素的YCbCr信號(hào)并把它們放入數(shù)據(jù)緩沖器3和4的同時(shí)開始處理緩沖器1和2中的數(shù)據(jù),于是通過兩對(duì)數(shù)據(jù)緩沖器的作用實(shí)現(xiàn)了一個(gè)簡單的流水線操作。在色空間反變換中要實(shí)現(xiàn)將YCbCr信號(hào)轉(zhuǎn)換成液晶顯示所需要的RGB信號(hào),根據(jù)公式(1)并進(jìn)行簡化我們可以得到相應(yīng)的反變換的公式(2)。
根據(jù)反變換系數(shù)的范圍,我們將所有的系數(shù)值乘上64,然后將乘積的整數(shù)部分用一個(gè)8位的帶符號(hào)數(shù)表示。在色空間反變換中我們?cè)O(shè)計(jì)了一個(gè)9× 8的Booth乘法器,用來實(shí)現(xiàn)色度信號(hào)和變換系數(shù)的帶符號(hào)乘法運(yùn)算。為了保證反變換的正確,在運(yùn)算過程中要進(jìn)行符號(hào)擴(kuò)展,所以變換所得的RGB信號(hào)是12位的帶符號(hào)數(shù),而最終輸出到數(shù)模轉(zhuǎn)換器的數(shù)據(jù)是8位無符號(hào)數(shù),因此還要進(jìn)行溢出處理,將所有的計(jì)算結(jié)果都限定在0~255范圍內(nèi)。同時(shí)由于液晶顯示器的公共電極的電位是交流電位,即相鄰兩行的公共電極的電位是反相的,所以相鄰兩行的圖像數(shù)據(jù)應(yīng)該分別以原碼和反碼輸出。
3.4 脈沖發(fā)生器模塊
脈沖發(fā)生器根據(jù)有限狀態(tài)機(jī)中行列計(jì)數(shù)器的狀態(tài)和波形參數(shù)寄存器內(nèi)的參數(shù),產(chǎn)生各驅(qū)動(dòng)波形,這些驅(qū)動(dòng)波形用于驅(qū)動(dòng)液晶顯示模塊本身及其外接的模擬前端電路。
4 Verilog語言實(shí)現(xiàn)和FPGA硬件驗(yàn)證
在確定了整體以及各功能模塊的結(jié)構(gòu)設(shè)計(jì)之后,就可以用Verilog HDL語言對(duì)設(shè)計(jì)進(jìn)行RTL建模,然后用Synopsys 公司的VCS對(duì)設(shè)計(jì)進(jìn)行仿真并調(diào)試。通過RTL級(jí)的仿真后,我們對(duì)此電路進(jìn)行了FPGA的硬件驗(yàn)證,使用的芯片是Xilinx公司的VirtexE1000-BG560,系統(tǒng)時(shí)鐘為54MHz。無論是單獨(dú)測試還是作為整個(gè)數(shù)碼相機(jī)專用芯片的一部分,液晶顯示控制電路都能成功實(shí)現(xiàn)兩種工作模式下的設(shè)計(jì)要求,性能良好。
5結(jié)束語
通過FPGA驗(yàn)證后,液晶顯示控制電路用TSMC 0.25mm SAGETM工藝實(shí)現(xiàn),后端流程如圖6所示,其中的Design Compiler,Prime Time和Formality是Synopsys公司的產(chǎn)品;Silicon Ensembler和Virtuso是Cadence公司的產(chǎn)品。圖像采樣接口的電路規(guī)模為15000門左右,芯片面積為0.49mm×0.8mm。
LCD顯示屏相關(guān)文章:lcd顯示屏原理
fpga相關(guān)文章:fpga是什么
led顯示器相關(guān)文章:led顯示器原理
lcd相關(guān)文章:lcd原理 脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理
評(píng)論