專利名稱::基于fpga的數(shù)字osd控制器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種OSD(OnScreenDisplay,屏幕顯示)控制器,特別是一種為液晶顯示器LCD提供數(shù)字OSD圖像、用現(xiàn)場(chǎng)可編程門(mén)陣列FPGA實(shí)現(xiàn)的OSD控制器。
背景技術(shù):
:OSD是各種顯示器都必須具備的一項(xiàng)功能,為用戶提供對(duì)顯示器進(jìn)行參數(shù)調(diào)節(jié)的字符或圖像信息,方便用戶對(duì)顯示器進(jìn)行調(diào)節(jié)。此外,還可以在原始視頻圖像上疊加特殊的圖像信息。OSD控制器就是完成這項(xiàng)功能的系統(tǒng)。田日鎮(zhèn)設(shè)計(jì)的屏幕顯示電路用于顯示模擬的隔行掃描視頻信號(hào)的顯示系統(tǒng)中(“視頻顯示設(shè)備的屏幕顯示電路”,中國(guó)專利,公告號(hào)1139334,1997.1.1)。但它不能用于LCD,因?yàn)長(zhǎng)CD接收的是數(shù)字逐行掃描的視頻信號(hào),顯示數(shù)據(jù)必須與LCD的物理像素點(diǎn)一一對(duì)應(yīng),需要一種數(shù)字信號(hào)的OSD顯示菜單生成方法。J.A.庫(kù)佩爾和J.W.查納提出了一種OSD控制器的結(jié)構(gòu)(“屏幕顯示的鏈接目錄結(jié)構(gòu)”,中國(guó)專利,公告號(hào)1197570,1998)。它包括一組OSD存儲(chǔ)器存儲(chǔ)塊序列,每塊包含表示OSD的數(shù)據(jù)和指向下一塊的指針。這些塊由OSD發(fā)生器按順序地從OSD存儲(chǔ)器中檢索,并且從OSD表示數(shù)據(jù)中生成OSD圖像表示信號(hào)。由于它在OSD顯示菜單的不同區(qū)域中,所以采用鏈表目錄結(jié)構(gòu),這樣在用戶編程時(shí)就需要計(jì)算和指定下一塊的指針。又因?yàn)槭侵苯訌腛SD存儲(chǔ)器中檢索出OSD數(shù)據(jù),就相當(dāng)于OSD圖像的每個(gè)像素點(diǎn)的數(shù)據(jù)都要由微控制器(MCU)寫(xiě)入OSD存儲(chǔ)器中,所以增加了編程的工作量和復(fù)雜性。此外,存儲(chǔ)器的使用量也較大。湯姆森消費(fèi)電子有限公司研究采用1-位像素產(chǎn)生屏幕顯示消息的設(shè)備和方法(“采用1-位像素產(chǎn)生屏幕顯示消息的設(shè)備和方法”,中國(guó)專利,公告號(hào)CN1239628A,1999.12.22),其OSD位流包括OSD首標(biāo)和OSD數(shù)據(jù)。這些首標(biāo)和數(shù)據(jù)完全是由MCU寫(xiě)入存儲(chǔ)器,雖然它使用了1-位像素的有效OSD位流,降低了對(duì)譯碼/顯示系統(tǒng)的存儲(chǔ)器帶寬要求,但是,由于每一個(gè)OSD顯示像素點(diǎn)的都要在存儲(chǔ)器中建立,所以,存儲(chǔ)器容量至少要與OSD圖像的總分辨率保持一致。另外,首標(biāo)還要占用存儲(chǔ)器空間。例如,該專利給出的一個(gè)實(shí)施例中,每個(gè)首標(biāo)是由5個(gè)64位字構(gòu)成,其后是任意數(shù)量的64位OSD數(shù)據(jù)(位表)字??梢?jiàn),它只是相對(duì)于“多位”O(jiān)SD位流的方法降低了存儲(chǔ)器容量,實(shí)際的存儲(chǔ)器總?cè)萘咳匀缓艽?。日本的MasayukiNaito和Sano-shi提出一種在移動(dòng)電話上顯示電視圖像時(shí),疊加OSD圖像信息的相關(guān)技術(shù)(“Imagesignalprocessorcircuitandportableterminaldevice”,美國(guó)專利,公告號(hào)US2005/0057582,May17,2005)。該專利只采用OSD處理單元內(nèi)的字符(圖)庫(kù)(FROM)來(lái)產(chǎn)生OSD圖像,不能夠產(chǎn)生隨意變化的OSD圖像。
發(fā)明內(nèi)容本發(fā)明是為避免上述現(xiàn)有技術(shù)所存在的不足之處,提供一種以FPGA為核心的,僅使用FPGA片內(nèi)少量存儲(chǔ)器資源,具有顯示字符和位圖兩種功能,用戶的硬件接口和軟件編程簡(jiǎn)單的基于FPGA的數(shù)字OSD控制器。本發(fā)明解決技術(shù)問(wèn)題采用的技術(shù)方案是本發(fā)明結(jié)構(gòu)特點(diǎn)是在FPGA上實(shí)現(xiàn),并由基于字符的處理模塊、基于可變位圖的處理模塊、MCU接口模塊、OSD圖像色彩與特性合成模塊和OSD管理模塊組成;通過(guò)由所述MCU接口模塊提供的串并兩種方式之一,設(shè)置OSD控制器內(nèi)的控制寄存器和屬性參數(shù)寄存器、讀取OSD控制器的當(dāng)前工作狀態(tài)、設(shè)定OSD窗口存儲(chǔ)器和位圖存儲(chǔ)器的顯示信息;所述OSD圖像色彩與特性合成模塊根據(jù)OSD控制器的控制參數(shù)和顯示窗口的屬性參數(shù),生成包含字符和位圖的OSD圖像數(shù)據(jù)編碼流(OSD_DCODE);利用OSD圖像數(shù)據(jù)編碼流(OSD_DCODE)及當(dāng)前顯示像素點(diǎn)的屬性參數(shù),合成最終的數(shù)字紅綠藍(lán)(RGB)3*8bits的彩色OSD圖像數(shù)據(jù)流,同時(shí)OSD管理模塊輸出OSD圖像數(shù)據(jù)流有效信號(hào)(OSD_ACTIVE),用于指示當(dāng)前OSD圖像數(shù)據(jù)有效,將當(dāng)前有效OSD圖像數(shù)據(jù)與原始輸入視頻圖像數(shù)據(jù)進(jìn)行疊加;利用FPGA片內(nèi)存儲(chǔ)器資源,實(shí)現(xiàn)數(shù)字OSD圖像的生成;OSD圖像中不同區(qū)域的字符、位圖之間的鏈接關(guān)系由OSD控制器的數(shù)字邏輯負(fù)責(zé)計(jì)算與處理。本發(fā)明的結(jié)構(gòu)特點(diǎn)也在于所述利用FPGA片內(nèi)存儲(chǔ)器資源是分別采用分布式存儲(chǔ)器資源(DistributedRAM)和塊存儲(chǔ)器資源(BlockRAM)。在于所述字符處理模塊的OSD窗口RAM(OSD_WRAM)采用FPGA中的分布式存儲(chǔ)器資源(DistributedRAM),并設(shè)置為雙端口RAM的形式;OSD字體ROM(OSD_TROM)采用FPGA中的塊存儲(chǔ)器資源(BlockRAM),并設(shè)置為只讀存儲(chǔ)器的形式。所述字符處理模塊的OSD圖像合成采用從OSD窗口RAM(OSD_WRAM)到OSD字體ROM(OSD_TROM)之間的訪問(wèn)地址轉(zhuǎn)換邏輯,使用4個(gè)計(jì)數(shù)器與比較器完成地址轉(zhuǎn)換。所述OSD窗口RAM(OSD_WRAM)中的數(shù)據(jù)是由用戶微控制器(MCU)寫(xiě)入,包括字符編碼和屬性字段。所述OSD字體ROM(OSD_TROM)中的每個(gè)像素點(diǎn)設(shè)置為n位,利用對(duì)應(yīng)的彩色查找表,獲得在每個(gè)字符區(qū)域中的2n種顏色的顯示?;诳勺兾粓D處理模塊的位圖RAM(BMP_RAM)是采用FPGA內(nèi)的塊存儲(chǔ)器資源(BlockRAM),設(shè)置為雙端口RAM的形式,位圖RAM(BMP_RAM)的位寬、地址深度、行像素點(diǎn)數(shù)(OSD_PX)的數(shù)值,根據(jù)要求OSD圖像的顏色位數(shù)和不同分辨率圖像任意設(shè)置。所述數(shù)字OSD控制器與用戶微控制器的接口包括并行的擴(kuò)展存儲(chǔ)器接口和串行外設(shè)接口(SPI)。所述數(shù)字OSD控制器與LCD顯示控制板中的LCD的各圖像處理模塊進(jìn)行連接,接受其輸出的行同步信號(hào)(Hsync)、垂直同步信號(hào)(Vsynnc)以及使能信號(hào)(Enab),并在輸入原始圖像數(shù)據(jù)流中插入由所述控制器生產(chǎn)的OSD圖像數(shù)據(jù)流,將疊加了OSD圖像的數(shù)據(jù)流送入LCD顯示面板。用戶通過(guò)MCU接口模塊提供的串并兩種方式之一,設(shè)置控制器內(nèi)的控制寄存器、屬性參數(shù)寄存器,讀取控制核的當(dāng)前工作狀態(tài),設(shè)定OSD窗口存儲(chǔ)器(OSD_WRAM)和位圖存儲(chǔ)器(BMP_RAM)的顯示信息;利用OSD窗口存儲(chǔ)器(OSD_WRAM)、OSD字體ROM(OSD_TROM)、位圖存儲(chǔ)器(BMP_RAM)三種不同作用和不同類型的存儲(chǔ)器資源中存儲(chǔ)的數(shù)據(jù)信息,生成符合不同分辨率LCD面板的工作時(shí)序要求的彩色OSD圖像;OSD圖像色彩與特性合成模塊將根據(jù)控制器的控制參數(shù)和顯示窗口的屬性參數(shù),包括在LCD上顯示出的字符編碼、字符顏色、位圖像素點(diǎn)數(shù)據(jù)、位圖像素點(diǎn)顏色、OSD圖像的顯示位置、OSD圖像窗口大小、顯示字符大小、以及OSD圖像的透明度,生成包含字符和位圖的OSD圖像數(shù)據(jù)編碼流(OSD_DCODE);利用OSD_DCODE及當(dāng)前顯示像素點(diǎn)的屬性參數(shù),合成最終的數(shù)字紅綠藍(lán)(RGB)3*8bits的彩色OSD圖像數(shù)據(jù)流,同時(shí)OSD管理模塊輸出OSD圖像數(shù)據(jù)有效信號(hào)(OSD_ACTIVE),用于指示當(dāng)前OSD圖像數(shù)據(jù)有效,并使當(dāng)前有效的OSD圖像數(shù)據(jù)與輸入的原始視頻圖像數(shù)據(jù)進(jìn)行合成。與已有技術(shù)相比,本發(fā)明的有益效果體現(xiàn)在1、本發(fā)明僅使用FPGA片內(nèi)少量的存儲(chǔ)器資源,實(shí)現(xiàn)數(shù)字OSD圖像的生成,沒(méi)有使用獨(dú)立的、大容量的、片外存儲(chǔ)器資源,從而優(yōu)化控制器的結(jié)構(gòu),降低成本;2、本發(fā)明中包括基于字符和基于可變位圖的兩種OSD圖像合成模塊,可以表達(dá)豐富的信息,優(yōu)于僅采用一種合成模塊的OSD控制器,OSD圖像顯示與調(diào)整更為靈活;3、本發(fā)明OSD圖像中不同區(qū)域的字符、位圖之間的鏈接關(guān)系完全由OSD控制器的數(shù)字邏輯負(fù)責(zé)計(jì)算與處理,不需要用戶在軟件編程時(shí)考慮,從而降低用戶編程的復(fù)雜度,方便用戶的使用,優(yōu)于在MCU編程時(shí)需要考慮OSD圖像之間的鏈接關(guān)系的合成方法;4、本發(fā)明OSD控制器具有串行、并行兩種MCU接口,為用戶的硬件設(shè)計(jì)和軟件編程提供了較大的自由度,使其適用于采用不同類型MCU的LCD控制器中,優(yōu)于只采用單一MCU接口的控制器;5、在實(shí)際性能方面,本發(fā)明在XILINX公司的SPARTAN2E系列FPGA中的一個(gè)實(shí)施例中,工作頻率最高達(dá)到85MHz,并通過(guò)高低溫度的試驗(yàn),證明能夠可靠工作在-40℃~+85℃的溫度范圍內(nèi),優(yōu)于一般OSD控制器只能工作于0℃以上的環(huán)境溫度中。圖1為OSD控制器內(nèi)部功能模塊框圖。圖2為字符處理模塊的存儲(chǔ)器配置原理圖。其中圖2a為OSD_WRAM組織結(jié)構(gòu)示意圖。圖2b為字符(CELL)組織結(jié)構(gòu)示意圖。圖2c為OSD_TROM組織結(jié)構(gòu)示意圖。圖3為位圖處理模塊的存儲(chǔ)器配置原理圖。圖4為OSD字符圖像合成原理圖。圖5為OSD位像合成原理圖。圖6為該OSD控制器與LCD顯示系統(tǒng)中其它部分的連接關(guān)系圖。圖7為并行擴(kuò)展存儲(chǔ)器接口和串行SPI接口設(shè)計(jì)原理。具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作詳細(xì)說(shuō)明。參見(jiàn)圖1,本實(shí)施例中,基于FPGA的數(shù)字OSD控制器的設(shè)計(jì)目標(biāo)是生成用戶自定義的OSD數(shù)字圖像,并使之能夠與數(shù)字化的、高速的原始視頻圖像數(shù)據(jù)流進(jìn)行疊加,形成新的數(shù)字圖像,然而,由于視頻圖像不停地在刷新,OSD圖像要在時(shí)序掃描到它所在區(qū)域和對(duì)應(yīng)像素點(diǎn)時(shí),準(zhǔn)備好像素點(diǎn)的RGB值,而這些數(shù)據(jù)是以存儲(chǔ)器形式來(lái)組織的。注意,那里并不是簡(jiǎn)單地以圖像的方式存儲(chǔ)在存儲(chǔ)器中。圖2所示基于字符和圖3所示基于位圖的兩個(gè)OSD圖像合成模塊分別采用了不同的存儲(chǔ)器配置方案。圖2為字符處理模塊的存儲(chǔ)器配置原理的一個(gè)實(shí)現(xiàn)例,本實(shí)施例為其配置了兩個(gè)存儲(chǔ)器一個(gè)稱為OSD窗口RAM(OSD_WRAM),一個(gè)稱為OSD字體ROM(OSD_TROM),它們都嵌入在FPGA中,分別占FPGA的DistributeRAM和BlockRAM邏輯資源。具體的存儲(chǔ)器組織結(jié)構(gòu)如圖2所示,圖2a中OSD_WRAM是用戶可以通過(guò)MCU串并兩種接口來(lái)設(shè)置的雙端口靜態(tài)SRAM,共有256個(gè)地址單元,每個(gè)地址單元是16bits,用于存儲(chǔ)顯示字符編碼及字符屬性。OSD窗口被劃分為若干行列,構(gòu)成一個(gè)矩形的顯示窗口,OSD窗口水平和垂直方向的寬、高和顯示位置(起始點(diǎn)X,Y坐標(biāo))由4個(gè)參數(shù)寄存器(OSD_WX、OSD_WY,和OSD_XSTART、OSD_YSTART)進(jìn)行控制,終止點(diǎn)坐標(biāo)(OSD_XSTOP,OSD_YSTOP)由內(nèi)部邏輯計(jì)算得到,并且進(jìn)行超出邊界檢測(cè),防止因單片機(jī)編程誤操作出現(xiàn)圖像紊亂。圖中的一個(gè)實(shí)例為4行*8列。而每個(gè)字符單元被稱為CELL,由n*m像素分辨率的點(diǎn)陣組成,如圖2b所示一個(gè)實(shí)施例中CELL的分辨率為24*16pixels,每個(gè)像素點(diǎn)占1bit的RAM位。為方便存取,將一行共16個(gè)像素點(diǎn)組成一個(gè)存儲(chǔ)單元,那么一個(gè)CELL就是由24個(gè)16bits的存儲(chǔ)單元構(gòu)成,占用24個(gè)ROM地址,把所有的預(yù)置字符順序地存儲(chǔ)在OSD_TROM中,便有如圖2c所示的字符庫(kù)結(jié)構(gòu)。注意,對(duì)于本領(lǐng)域的技術(shù)人員,存儲(chǔ)器OSD_WRAM和OSD_TROM的位寬、地址深度、字符CELL的寬高比和像素點(diǎn)數(shù)目等數(shù)值,都不僅限于圖2實(shí)例中的設(shè)計(jì)值,因此采用此種配置方案可以實(shí)現(xiàn)多種基于字符的OSD圖像。圖2中的字庫(kù)OSDT_ROM中存儲(chǔ)的字符信息,一部分是固定的字符,另一部分是由MCU寫(xiě)的新字符庫(kù),這樣可以顯示豐富的用戶自定義字符。圖3為位圖處理模塊的存儲(chǔ)器配置原理的一個(gè)實(shí)例。在該實(shí)例中,包含一個(gè)雙端口的位圖RAM(BMP_RAM),組織結(jié)構(gòu)如圖3所示。在垂直方向上,它對(duì)應(yīng)著4行圖像掃描的像素點(diǎn)數(shù)據(jù);根據(jù)LCD面板的水平分辨率,OSD_PX配置為不同的長(zhǎng)度,但為了方便設(shè)計(jì),OSD_PX與字符的寬度(16位)保持一定的比例關(guān)系,必須是16的整數(shù)倍,最大為1024,這樣BMP_RAM總共只占用FPGA的一個(gè)BlockRAM(4Kbits)資源。如果把每1位擴(kuò)展為4位,可以實(shí)現(xiàn)16種不同的彩色圖形。整個(gè)OSD圖像在垂直方向上,每4行被劃分為一個(gè)獨(dú)立的區(qū)域,在顯示時(shí)序掃描到OSD圖像顯示區(qū)域內(nèi)某一行前,用戶需要通過(guò)MCU接口提前更新BMP_RAM的內(nèi)容。以這種方式合成的OSD圖像,可以實(shí)現(xiàn)用戶自定義位圖,比較基于字符方式中的通過(guò)用戶定義字符庫(kù)來(lái)增加顯示信息方法,可以實(shí)現(xiàn)更豐富的自定義圖像圖形信息。注意,對(duì)于本領(lǐng)域的技術(shù)人員,存儲(chǔ)器BMP_RAM的位寬、地址深度、OSD_PX的數(shù)值等,都不僅限于圖3實(shí)例中的設(shè)計(jì)值,因此采用此種配置方案可以實(shí)現(xiàn)多種基于位圖的OSD圖像。圖4為OSD字符圖像合成原理圖。在本實(shí)施例中,確定OSD控制核的存儲(chǔ)器組織結(jié)構(gòu)(圖2和圖3)后,利用這些存儲(chǔ)器資源,就可以合成所需要的OSD圖像。合成OSD圖像是由OSD窗口掃描檢測(cè)邏輯來(lái)實(shí)現(xiàn),包括一系列的OSD圖像合成邏輯控制功能。其中,從OSDW_RAM中顯示字符編碼的存儲(chǔ)地址(邏輯地址),得到最后在LCD屏上顯示的某個(gè)OSD像素點(diǎn)在OSDT_ROM中實(shí)際對(duì)應(yīng)的物理地址,這之間的地址轉(zhuǎn)換邏輯是OSD圖像合成的關(guān)鍵。在圖4的實(shí)例中,除了包括2個(gè)存儲(chǔ)器OSDW_RAM和OSDT_ROM外,主要有2個(gè)掃描時(shí)序計(jì)算邏輯單元、4個(gè)比較器和字庫(kù)ROM訪問(wèn)地址計(jì)算單元。以像素為單位的CELL內(nèi)掃描時(shí)序計(jì)算單元是在一個(gè)字符內(nèi)部,按像素點(diǎn)時(shí)鐘頻率DCLK(例如在一個(gè)實(shí)例中,對(duì)應(yīng)于1024*768*60Hz的逐行掃描PC視頻信號(hào),DCLK為65MHz)計(jì)算出即將顯示像素點(diǎn)所對(duì)應(yīng)的坐標(biāo);以字符為單位的OSD窗口內(nèi)掃描時(shí)序計(jì)算單元是按DCLK/FR_X的分頻時(shí)鐘計(jì)算出即將顯示哪個(gè)字符;而它們分別被兩個(gè)比較器1,2,3,4的輸出信號(hào)控制,最終得到訪問(wèn)雙端口OSDW_RAMB端口的讀地址(OSDW_AD,它是邏輯地址)和讀信號(hào)(RD)、使能信號(hào)(OE),從而由OSDW_RAM的B端口輸出OSD顯示圖像中對(duì)應(yīng)坐標(biāo)區(qū)域的字符編碼數(shù)據(jù)(OSDW_DATA)。字符編碼數(shù)據(jù)(OSDW_DATA)是用戶通過(guò)MCU接口寫(xiě)入OSDW_RAM的16位字符編碼信息,在它的一個(gè)實(shí)例中,其定義如圖5所示,包括字符編碼和字符屬性,具體的包含三個(gè)字段(1)字符索引碼char_code,8bits,一共可以編碼檢索預(yù)先存放在OSDT_ROM字庫(kù)中的256個(gè)固定字符,包括英文字母大小寫(xiě)、數(shù)字、固定圖標(biāo)、和常用漢字;(2)前景色frontcolor,4bits,定義16種顏色;(3)背景色backcolor,4bits,對(duì)應(yīng)16種顏色。采用這個(gè)色彩屬性就可以實(shí)現(xiàn)“熱點(diǎn)”圖標(biāo),指示當(dāng)前的工作點(diǎn)。字庫(kù)OSDT_ROM的訪問(wèn)地址計(jì)算單元利用OSDW_DATA的字符索引碼字段char_code和字符內(nèi)掃描參數(shù)celly_cnto,按下面的公式,先計(jì)算出當(dāng)前顯示圖像像素點(diǎn)在OSDT_ROM的頁(yè)地址,再加上celly_cnto得到物理地址OSDT_AD,同時(shí)按照時(shí)序關(guān)系給出對(duì)應(yīng)的OSD圖像數(shù)據(jù)有效信號(hào)OSD_ACTIVE信號(hào)。圖4中的時(shí)鐘延遲單元是補(bǔ)償計(jì)算和存儲(chǔ)器訪問(wèn)過(guò)程中的流水線延遲,使最終輸出的OSD圖像數(shù)據(jù)碼流(OSD_DATA)與OSD_ACTIVE同步。OSDT_AD=charcode*FR_X+celly_cntoOSD圖像數(shù)據(jù)碼流(OSD_DATA)和對(duì)應(yīng)字符編碼定義中的兩個(gè)字段(背景色和前景色)一起進(jìn)入圖1的“OSD圖像色彩與特性合成模塊”,由其中的彩色查找表(CLUT),合成最終輸出到LCD的數(shù)字RGB3*8bits的視頻圖像數(shù)據(jù)流。此外,通過(guò)把OSD圖像數(shù)據(jù)與原圖像進(jìn)行bit連接(&),實(shí)現(xiàn)“透明OSD”圖像的顯示效果。根據(jù)時(shí)序控制寄存器的設(shè)置,調(diào)整OSD控制核的時(shí)鐘頻率在水平掃描方向?yàn)樵l率的二分頻,并在垂直掃描方向上,采用數(shù)據(jù)復(fù)重的方法,實(shí)現(xiàn)OSD顯示圖像的二倍放大。OSD圖像是LCD顯示器的必備功能,根據(jù)本發(fā)明設(shè)計(jì)的一個(gè)實(shí)施例,如圖6所示,OSD控制器作為L(zhǎng)CD控制器的一個(gè)功能模塊,集成于FPGA內(nèi)。由LCD控制器的其它圖像處理模塊輸出一路3*8位的數(shù)字RGB圖像信號(hào)到OSD控制器。當(dāng)微控制器寫(xiě)入控制字,將OSD使能信號(hào)(OSD_EN)置為有效“1”時(shí),OSD控制器產(chǎn)生的OSD圖像信號(hào)(3*8位RGB)與輸入的數(shù)字RGB圖像信號(hào)疊加在一起。疊加是在水平、垂直同步信號(hào)掃描到OSD圖像所在區(qū)域時(shí),利用OSD圖像有效信號(hào)(OSD_ACTIVE)的高低電平,選通OSD圖像數(shù)據(jù)輸出到LCD,取代輸入圖像數(shù)據(jù),實(shí)現(xiàn)OSD圖像的顯示。根據(jù)本發(fā)明,OSD圖像數(shù)據(jù)可以部分取代輸入圖像數(shù)據(jù),從而實(shí)現(xiàn)透明度可調(diào)的OSD圖像。OSD控制器中集成兩種存儲(chǔ)器接口并行的異步擴(kuò)展存儲(chǔ)器和串行的SPI接口,圖6中MCU可以通過(guò)這兩種接口設(shè)置OSD控制器的工作狀態(tài)進(jìn)行控制,負(fù)責(zé)啟動(dòng)OSD控制器工作,設(shè)定OSD圖像中字符信息和位圖信息,設(shè)定OSD圖像顯示位置的坐標(biāo)值及OSD顯示窗口的大小、字符和位圖的大小、透明程序等屬性。在圖6中,OSD控制器的用戶通過(guò)MCU接口模塊提供的串并兩種接口方式之一,來(lái)設(shè)置OSD控制器內(nèi)的控制寄存器、時(shí)序參數(shù)寄存器、OSD顯示窗口屬性寄存器、圖像屬性參數(shù),讀取當(dāng)前工作狀態(tài)和OSD顯示窗口的數(shù)據(jù),設(shè)定OSD窗口存儲(chǔ)器(OSD_WRAM)和位圖存儲(chǔ)器(BMP_RAM)的顯示信息;OSD圖像色彩與特性合成模塊則根據(jù)上述各種控制參數(shù)、OSD顯示窗口屬性參數(shù),生成包含有字符和位圖兩種信息的OSD圖像數(shù)據(jù)編碼流(OSD_DCODE);利用OSD_DCODE及當(dāng)前顯示像素點(diǎn)的圖像屬性參數(shù),通過(guò)兩張彩色查找表生成共24位(3*8)的數(shù)字紅(R)、綠(G)、藍(lán)(B)信號(hào),形成最終的彩色OSD圖像數(shù)據(jù)流,同時(shí)由時(shí)序處理管理模塊輸出一個(gè)用于指示當(dāng)前OSD圖像數(shù)據(jù)有效的OSD_ACTIVE信號(hào),以便與原始輸入圖像數(shù)據(jù)進(jìn)行疊加。注意,當(dāng)字庫(kù)OSDT_ROM中字符和位圖BMP_RAM的每一個(gè)像素點(diǎn)的位數(shù)取為1時(shí),通過(guò)彩色查找表,可以譯碼得到21種顏色;當(dāng)每一個(gè)像素點(diǎn)的位數(shù)取為2時(shí),通過(guò)彩色查找表,可以譯碼得到22=4種顏色;以此類推,當(dāng)每一個(gè)像素點(diǎn)的位數(shù)取為n時(shí),通過(guò)彩色查找表,可以譯碼得到2n種顏色,最大的位數(shù)n可以取到8位,譯碼得到256種顏色,從而實(shí)現(xiàn)在一個(gè)字符區(qū)域和位圖區(qū)域內(nèi)顯示多種顏色的字符和位圖。為提高OSD控制核與用戶MCU的兼容性,并方便用戶MCU的硬件接口和軟件程序設(shè)計(jì),MCU接口模塊提供并行、串行兩種接口邏輯控制單元(1)與MSC51系列單片機(jī)的P0、P2口,按照其外圍擴(kuò)展存儲(chǔ)器的數(shù)據(jù)和地址總線接口方式來(lái)通訊。P0口復(fù)用為8位數(shù)據(jù)總線和低8位地址總線,P2口為高8位地址總線。MCU接口邏輯模塊進(jìn)行地址譯碼,8位數(shù)據(jù)到16位寄存器或16位RAM的轉(zhuǎn)換。MCU通過(guò)一條MOVX指令可以直接訪問(wèn)控制核內(nèi)8位寄存器,兩條MOVX指令(可以不連續(xù))對(duì)相鄰的兩個(gè)地址即可完成對(duì)一個(gè)16位寄存器的訪問(wèn),兩條連續(xù)的MOVX指令對(duì)兩個(gè)相鄰的地址進(jìn)行操作即可完成對(duì)一個(gè)16位RAM單元的訪問(wèn)。(2)采用四線的SPI串行通訊接口協(xié)議,與包括MSP430和MCS51等類型單片機(jī)進(jìn)行串行通訊。SPI接口邏輯單元內(nèi)部串行通訊協(xié)議是由一個(gè)狀態(tài)機(jī)(StateMachine)來(lái)實(shí)現(xiàn),狀態(tài)轉(zhuǎn)移圖如圖7所示。SPI接口邏輯的輸入端口包括四根信號(hào)線SCK(串口時(shí)鐘),CE(使能信號(hào)),DI(數(shù)據(jù)輸入),DO(數(shù)據(jù)輸出)。包括6個(gè)狀態(tài)IDEL(空閑狀態(tài)),START(開(kāi)始),ADDRESS(輸入地址狀態(tài)),RW(讀寫(xiě)判斷位),READ(讀狀態(tài)),WRITE(寫(xiě)狀態(tài))。在接收到訪問(wèn)地址后的下一位是讀寫(xiě)命令判斷位,決定接下來(lái)是讀數(shù)據(jù),還是寫(xiě)數(shù)據(jù)。完成讀寫(xiě)命令,必須再進(jìn)入一次IDEL狀態(tài)一個(gè)時(shí)鐘周期后,才能重新進(jìn)入START狀態(tài)。權(quán)利要求1.一種基于FPGA的數(shù)字OSD控制器,其特征是在FPGA上實(shí)現(xiàn),并由基于字符的處理模塊、基于可變位圖的處理模塊、微控制器(MCU)接口模塊、OSD圖像色彩與特性合成模塊和OSD管理模塊組成;通過(guò)由所述MCU接口模塊提供的串并兩種方式之一,設(shè)置OSD控制器內(nèi)的控制寄存器和屬性參數(shù)寄存器、讀取OSD控制器的當(dāng)前工作狀態(tài)、設(shè)定OSD窗口存儲(chǔ)器和位圖存儲(chǔ)器的顯示信息;所述OSD圖像色彩與特性合成模塊根據(jù)OSD控制器的控制參數(shù)和顯示窗口的屬性參數(shù),生成包含字符和位圖的OSD圖像數(shù)據(jù)編碼流(OSD_DCODE);利用OSD圖像數(shù)據(jù)編碼流(OSD_DCODE)及當(dāng)前顯示像素點(diǎn)的屬性參數(shù),合成最終的數(shù)字紅綠藍(lán)(RGB)3*8bits的彩色OSD圖像數(shù)據(jù)流,同時(shí)OSD管理模塊輸出OSD圖像數(shù)據(jù)流有效信號(hào)(OSD_ACTIVE),用于指示當(dāng)前OSD圖像數(shù)據(jù)有效,將當(dāng)前有效OSD圖像數(shù)據(jù)與原始輸入視頻圖像數(shù)據(jù)進(jìn)行疊加;利用FPGA片內(nèi)存儲(chǔ)器資源,實(shí)現(xiàn)數(shù)字OSD圖像的生成;OSD圖像中不同區(qū)域的字符、位圖之間的鏈接關(guān)系由OSD控制器的數(shù)字邏輯負(fù)責(zé)計(jì)算與處理。2.根據(jù)權(quán)利要求1所述的控制器,其特征在于所述利用FPGA片內(nèi)存儲(chǔ)器資源是分別采用分布式存儲(chǔ)器資源(DistributedRAM)和塊存儲(chǔ)器資源(BlockRAM)。3.根據(jù)權(quán)利要求2所述的控制器,其特征在于所述字符處理模塊的OSD窗口RAM(OSD_WRAM)采用FPGA中的分布式存儲(chǔ)器資源(DistributedRAM),并設(shè)置為雙端口RAM的形式;OSD字體ROM(OSD_TROM)采用FPGA中的塊存儲(chǔ)器資源(BlockRAM),并設(shè)置為只讀存儲(chǔ)器的形式。4.根據(jù)權(quán)利要求3所述的控制器,其特征在于所述字符處理模塊的OSD圖像合成采用從OSD窗口RAM(OSD_WRAM)到OSD字體ROM(OSD_TROM)之間的訪問(wèn)地址轉(zhuǎn)換邏輯,使用4個(gè)計(jì)數(shù)器與比較器完成地址轉(zhuǎn)換。5.根據(jù)權(quán)利要求3所述的控制器,其特征在于所述OSD窗口RAM(OSD_WRAM)中的數(shù)據(jù)是由用戶微控制器(MCU)寫(xiě)入,包括字符編碼和屬性字段。6.根據(jù)權(quán)利要求3所述的控制器,其特征是所述OSD字體ROM(OSD_TROM)中的每個(gè)像素點(diǎn)設(shè)置為n位,利用對(duì)應(yīng)的彩色查找表,獲得在每個(gè)字符區(qū)域中的2n種顏色的顯示。7.根據(jù)權(quán)利要求1所述的控制器,其特征是所述基于可變位圖處理模塊的位圖RAM(BMP_RAM)是采用FPGA內(nèi)的塊存儲(chǔ)器資源(BlockRAM),設(shè)置為雙端口RAM的形式,位圖RAM(BMP_RAM)的位寬、地址深度、行像素點(diǎn)數(shù)(OSD_PX)的數(shù)值,根據(jù)要求OSD圖像的顏色位數(shù)和不同分辨率圖像任意設(shè)置。8.根據(jù)權(quán)利要求1所述的控制器,其特征是所述數(shù)字OSD控制器與用戶微控制器(MCU)的接口包括并行的擴(kuò)展存儲(chǔ)器接口和串行外設(shè)接口(SPI)。9.根據(jù)權(quán)利要求1所述的控制器,其特征是所述數(shù)字OSD控制器與LCD顯示控制板中的LCD的各圖像處理模塊進(jìn)行連接,接受其輸出的行同步信號(hào)(Hsync)、垂直同步信號(hào)(Vsynnc)以及使能信號(hào)(Enab),并在原始輸入圖像數(shù)據(jù)流中插入由所述控制器生產(chǎn)的OSD圖像數(shù)據(jù)流,將疊加了OSD圖像的數(shù)據(jù)流送入LCD顯示面板。全文摘要基于FPGA的數(shù)字OSD控制器,其特征是在FPGA上實(shí)現(xiàn),由基于字符的處理模塊、基于可變位圖的處理模塊、微控制器MCU接口模塊、OSD圖像色彩與特性合成模塊和OSD管理模塊組成;利用所設(shè)計(jì)的三種不同作用和不同類型存儲(chǔ)器,自動(dòng)合成符合不同分辨率LCD掃描時(shí)序、彩色數(shù)字OSD圖像信號(hào)流,與原始輸入圖像在輸出端進(jìn)行圖像疊加,在LCD上顯示出圖像色彩、顯示位置、圖像窗口大小、字符大小、透明度都可變的OSD菜單圖像。并為用戶所使用的MCU提供串并行接口,方便用戶的硬件設(shè)計(jì)和軟件編程。文檔編號(hào)G09G3/36GK1713264SQ2005100410公開(kāi)日2005年12月28日申請(qǐng)日期2005年7月15日優(yōu)先權(quán)日2005年7月15日發(fā)明者盛磊,徐科軍申請(qǐng)人:合肥工業(yè)大學(xué)