基于CPLD的LED大屏幕視頻控制系統(tǒng)
1 復(fù)雜可編程邏輯器件概述
復(fù)雜可編程邏輯器件(CPLD)最早出現(xiàn)于80年代后期,由于其高速、設(shè)計(jì)靈活、成本低、延時(shí)可預(yù)測(cè)等特點(diǎn),一經(jīng)面世便得到廣泛的應(yīng)用。世界各主要PLD廠商都紛紛推出了自己的 CPLD產(chǎn)品,如 Altera公司的 MAX系列,Xilinx的XC9500和Spartan系列,Lattice公司的ispLSI系列等。
1.l 復(fù)雜可編程邏輯器件的特點(diǎn)
與傳統(tǒng)的FPGA相比,CPLD最大的特點(diǎn)在于其延時(shí)可預(yù)測(cè)性。在互連特性上,CPLD采用連續(xù)互連方式,即用固定長(zhǎng)度的金屬線實(shí)現(xiàn)邏輯單元之間的互連,避免了分段式互連結(jié)構(gòu)中的復(fù)雜的布局布線和多級(jí)實(shí)現(xiàn)問(wèn)題,能夠方便地預(yù)測(cè)設(shè)計(jì)時(shí)序,同時(shí)保證了CPLD的高速性能。用戶的仿真與實(shí)際系統(tǒng)集成后無(wú)太大的時(shí)間差異,不會(huì)給系統(tǒng)造成性能的波動(dòng),即系統(tǒng)具有穩(wěn)定的可編程性,這使得軟件控制下硬件的改變不受器件的影響。
1.2 isp LSI簡(jiǎn)介
Lattice 公司研制的在系統(tǒng)可編程大規(guī)模集成電路(ispLSI)系列芯片具有高密度、高速度和在線可編程等特點(diǎn)[2],使設(shè)計(jì)變得容易,并且不需要更改線路板就可以立即更改設(shè)計(jì),代表了大規(guī)?删幊踢壿嬈骷陌l(fā)展方向。ispLSI包括以下幾個(gè)主要部分:GLB(通用邏輯塊),GRP(集總布線區(qū)),ORP(輸出布線區(qū)),I/O單元和時(shí)鐘分配網(wǎng)絡(luò)。
(1) GLBispLSI的基本單元是GLB。每個(gè)GLB有18個(gè)輸入,4個(gè)輸出,以及實(shí)現(xiàn)標(biāo)準(zhǔn)邏輯功能的必要邏輯。GLB的輸入來(lái)自GRP和專門輸入端,GLB的輸出反饋回GLB,以便它們能連接到任何別的GLB的輸入端。
(2) GRPispLSI芯片中部有一個(gè)集總布線區(qū),該布線區(qū)在連線延時(shí)恒定且可預(yù)知的前提下,提供了完善的片內(nèi)邏輯互連性能。
(3) ORPORP提供了GLB輸出與芯片輸出引腳之間靈活的連接途徑。
(4) I/O單元每一個(gè)I/O單元直接連接到一個(gè)I/O引腳。每個(gè)I/O都可編程為輸入、輸出和雙向單元,并可根據(jù)所需要編程為鎖存或寄存功能。每16個(gè)I/O Cell分為一組。8個(gè)GLB,16個(gè)I/O Cell,一個(gè)ORP和2個(gè)專用輸入連在一起,組成一個(gè) Megablock(組合模塊)。8個(gè)GLB的輸出通過(guò)ORP連到16個(gè)I/O Cell。每個(gè)Megablock共享一個(gè)OE信號(hào)。
(5) 時(shí)鐘分配網(wǎng)絡(luò)以1032 為例,時(shí)鐘分配網(wǎng)絡(luò)有4個(gè)專用的時(shí)鐘輸入端:Y0,Y1,Y2和Y3;另外的一個(gè)專用時(shí)鐘輸入來(lái)自GLB的輸出。5個(gè)時(shí)鐘輸出:CLK0,CLK1, CLK2,I/O CLK0和I/O CLK1,用來(lái)提供到GLB和I/O單元的時(shí)鐘線路。CLK0,CLK1和CLK2用作GLB的時(shí)鐘信號(hào);I/O CLK0和I/O CLK1則用作I/O Cell的時(shí)鐘信號(hào)。
2 LED大屏幕視頻顯示系統(tǒng)原理
LED大屏幕視頻顯示系統(tǒng)由于具有亮度高、視角廣、壽命長(zhǎng)、性價(jià)比高,因此在銀行、交通、廣場(chǎng)、體育場(chǎng)館等公共場(chǎng)合得到了廣泛的應(yīng)用。筆者用按位分時(shí)顯示的方法研制了256×256灰度級(jí)的LED大屏幕視頻顯示系統(tǒng),畫面清晰穩(wěn)定,顏色豐富,取得了良好的視覺(jué)效果。
視頻控制系統(tǒng)是LED大屏幕視頻顯示系統(tǒng)的核心,它負(fù)責(zé)產(chǎn)生各種顯示控制信號(hào),對(duì)視頻數(shù)據(jù)進(jìn)行分割、存儲(chǔ)、灰度掃描并按特定的方式輸出數(shù)據(jù)到顯示屏體供驅(qū)動(dòng)顯示。從電路組成看,視頻控制系統(tǒng)包括計(jì)算機(jī)箱體內(nèi)的預(yù)處理卡及顯示屏體內(nèi)的可級(jí)聯(lián)的視頻控制器單元;視頻控制器單元(或預(yù)處理卡)由控制單元 (CPLD)和存儲(chǔ)器單元(SRAM組)以及I/O接口單元等部分組成。計(jì)算機(jī)屏幕上每8×16行單色數(shù)據(jù)對(duì)應(yīng)兩片SRAM存儲(chǔ)器(1024列×8×16 行為1個(gè)存儲(chǔ)器單元)8×1位數(shù)據(jù)口,所有存儲(chǔ)器的地址和控制信號(hào)由一片控制芯片(ispLSI1032E)產(chǎn)生。它們?cè)陲@示系統(tǒng)中的關(guān)系如圖1所示。
大屏幕顯示范圍為1024列×768行,時(shí)鐘頻率65MHz,整個(gè)顯示區(qū)域分為6個(gè)存儲(chǔ)器單元,每個(gè)存儲(chǔ)器單元對(duì)應(yīng)1024列×128行數(shù)據(jù),2個(gè)存儲(chǔ)器單元及1片控制芯片共同組成一個(gè)視頻控制器單元(3個(gè)視頻控制器單元可以級(jí)聯(lián)控制1024列×768行)。計(jì)算機(jī)視頻數(shù)據(jù)經(jīng)過(guò)預(yù)處理卡(如γ反校正)后輸出到視頻控制器單元,視頻控制器單元根據(jù)時(shí)鐘和行、場(chǎng)同步信號(hào)對(duì)數(shù)據(jù)進(jìn)行分割并分時(shí)寫入到2個(gè)存儲(chǔ)器單元內(nèi),視頻控制器的存儲(chǔ)器單元同時(shí)讀出的數(shù)據(jù)經(jīng)灰度調(diào)制后變成串行數(shù)據(jù)流,并行輸出到顯示屏體驅(qū)動(dòng)電路經(jīng)移位后以1行為周期打入到屏體顯示,同時(shí)行掃描信號(hào)以19行數(shù)據(jù)刷新時(shí)間為周期進(jìn)行垂直掃描。
設(shè)計(jì)中考慮到幀頻與LED屏體顯示效率的折中,采用td=h/16,即存儲(chǔ)器讀出速率等于1/2數(shù)據(jù)輸入速率,顯示基本時(shí)間單位為1/16 倍行周期;叶葤呙柰ㄟ^(guò)對(duì)灰度數(shù)據(jù)按位分時(shí)顯示的方法實(shí)現(xiàn),即計(jì)算機(jī)屏幕圖像以每像素24bit輸出(紅、綠、藍(lán)各8bit)時(shí),通過(guò)給每種顏色8bit 字節(jié)的不同位分配不同的顯示時(shí)間達(dá)到灰度顯示的目的。比如,最低位(第8位)對(duì)應(yīng)1/16行顯示時(shí)間,第7位對(duì)應(yīng)1/8行顯示時(shí)間,…,第2位對(duì)應(yīng)4行顯示時(shí)間,最高位對(duì)應(yīng)8行顯示時(shí)間。屏體數(shù)據(jù)更新時(shí)間以行周期為單位,最低位對(duì)應(yīng)更新時(shí)間為1行時(shí)間,其中顯示1/16行時(shí)間,其余15/16行時(shí)間里,由控制電路產(chǎn)生消隱信號(hào)進(jìn)行消隱,其余位類同。
3.2 視頻控制器單元設(shè)計(jì)
根據(jù)上述256級(jí)灰度視頻數(shù)據(jù)灰度掃描的原理設(shè)計(jì)了256級(jí)灰度視頻控制器,原理(單個(gè)顏色通道)如圖4所示。
按功能來(lái)分,設(shè)計(jì)的視頻控制器單元可以分為四個(gè)部分:控制單元、存儲(chǔ)器單元(SRAM)、數(shù)據(jù)緩沖器和接口單元。視頻控制器單元的核心是存儲(chǔ)器單元,計(jì)算機(jī)屏幕上每128行數(shù)據(jù)對(duì)應(yīng)一個(gè)存儲(chǔ)器單元,顯示屏所要實(shí)時(shí)顯示的內(nèi)容(即計(jì)算機(jī)屏幕圖像數(shù)據(jù))都存放在存儲(chǔ)器單元中?刂茊卧a(chǎn)生存儲(chǔ)器單元的地址信號(hào)和分時(shí)選通控制信號(hào)及灰度掃描控制信號(hào)如掃描地址信號(hào)、消隱、移位、鎖存脈沖等。數(shù)據(jù)緩沖器用于實(shí)現(xiàn)視頻數(shù)據(jù)的讀寫(輸出輸入)緩沖。接口單元用于產(chǎn)生符合顯示屏驅(qū)動(dòng)電路接口格式的信號(hào)。當(dāng)一個(gè)幀存儲(chǔ)器進(jìn)行數(shù)據(jù)寫入時(shí),另一個(gè)幀存儲(chǔ)器進(jìn)行數(shù)據(jù)掃描讀出,這樣兩組存儲(chǔ)器可以分別交替工作于視頻數(shù)據(jù)高速掃描和高速寫入兩種方式,因而可以提高數(shù)據(jù)讀寫的速率和顯示屏的幀頻,播放出來(lái)的圖像更加穩(wěn)定。
3.3 視頻控制器單元設(shè)計(jì)
視頻圖像信號(hào)頻率高、數(shù)據(jù)量大,要求實(shí)時(shí)處理,加之LED大屏幕的數(shù)字邏輯相當(dāng)復(fù)雜,采用復(fù)雜可編程邏輯器件(CPLD)設(shè)計(jì)系統(tǒng)中的關(guān)鍵控制電路,可以簡(jiǎn)化系統(tǒng)結(jié)構(gòu),便于調(diào)試。筆者利用Lattice公司的CPLD器件,用按位分時(shí)顯示的方法設(shè)計(jì)了256級(jí)灰度*256級(jí)灰度(紅、綠雙基色)視頻控制器單元的控制單元部分,經(jīng)測(cè)試畫面清晰穩(wěn)定,顏色豐富,取得了預(yù)期的效果。以下是設(shè)計(jì)的大致過(guò)程。
首先是器件選型。為了提高器件的利用率,從結(jié)構(gòu)化觀點(diǎn)出發(fā),統(tǒng)計(jì)出視頻控制器存儲(chǔ)單元、數(shù)據(jù)緩沖器和接口單元需要的控制信號(hào)數(shù)目為56,決定采用1片Lattice的ispLSI1032作為控制芯片。該芯片包含32個(gè)GLB,192個(gè)寄存器,I/O口及輸入數(shù)為72,門
數(shù)為6000,速度為70MHz,具有在系統(tǒng)編程功能,能夠比較高效地滿足應(yīng)用要求,同時(shí)還可兼顧系統(tǒng)今后的重構(gòu)。
按照設(shè)計(jì)要求,控制芯片用于產(chǎn)生讀、寫地址信號(hào)、掃描地址信號(hào)、分時(shí)選通控制信號(hào)和一些顯示控制信號(hào)如消隱、移位、打入脈沖等。在設(shè)計(jì)中采用了“自頂向下,逐步細(xì)化”的策略。
設(shè)計(jì)中開發(fā)軟件采用Lattice公司的EDA工具ispEXPERT7.0,設(shè)計(jì)輸入采用了原理圖和硬件描述語(yǔ)言混合輸入的方法,并對(duì)設(shè)計(jì)結(jié)果進(jìn)行了仿真。定時(shí)分析結(jié)果為最小時(shí)鐘周期為26.7ns,時(shí)鐘周期計(jì)算公式為時(shí)鐘周期=路徑延時(shí)+時(shí)鐘到輸出端延時(shí)+建立時(shí)間
存儲(chǔ)單元采用雙總線結(jié)構(gòu)的高速SRAM,每行數(shù)據(jù)對(duì)應(yīng)19行時(shí)間讀出,讀出后幀頻為103.6Hz。計(jì)算機(jī)視頻工作頻率為65MHz,行頻48.4kHz,幀頻60Hz。
4 結(jié)束語(yǔ)
本文討論了LED大屏幕視頻控制器單元中的灰度掃描方法,提出了256級(jí)灰度掃描時(shí)的實(shí)現(xiàn)方案,并用CPLD器件實(shí)現(xiàn)其控制電路。由于采用了EDA工具,降低了設(shè)計(jì)難度,縮短了開發(fā)周朗,同時(shí)由于只需一片集成電路即可實(shí)現(xiàn)過(guò)去需要幾十片中規(guī)模集成電路的控制功能,印刷板的面積大大縮小,系統(tǒng)抗干擾能力顯著增強(qiáng),此外ISP功能給電路板的調(diào)試和系統(tǒng)的維護(hù)帶來(lái)了很大的方便,并且有利于系統(tǒng)今后的升級(jí)和重構(gòu)。
更多相關(guān): AV集成
©版權(quán)所有。未經(jīng)許可,不得轉(zhuǎn)載。