何鑫 傅自鋼 胡峰濤
摘要:市場上的主流顯示屏的綜合素質(zhì)的好壞與A4rl的視覺體驗密切相關(guān),而基于FPGA的多分辨屏幕測試卡則能夠幫助人們合理有效的判斷顯示屏的好壞。該測試卡主要設(shè)計了主控模塊、Hash讀寫控制模塊、測試圖像生成模塊和動態(tài)時鐘發(fā)生模塊,同時還采用了邏輯圖像生成技術(shù)和多分辨率自動匹配技術(shù)。各模塊之間依靠信號傳遞、參數(shù)讀取實現(xiàn)協(xié)調(diào)工作,并加以時鐘驅(qū)動,以實現(xiàn)不同分辨率的測試圖像的生成、輪流切換、暫停,以及自動模式和手動模式的流暢轉(zhuǎn)換,達到對待測顯示屏進行綜合評估的目的。
關(guān)鍵詞:FPGA;多分辨率;動態(tài)時鐘;邏輯圖像生成;參數(shù)
中圖分類號:TP391 文獻標(biāo)識碼:A 文章編號:1009-3044(2017)22-0203-02
1概述
在科技高度發(fā)達的今天,顯示屏的應(yīng)用已經(jīng)滲透到人們生活中的各個方面,一塊顯示屏的好壞將直接影響人們的視覺體驗,而基于FPGA的多分辨率測試卡則是判斷顯示屏好壞的一項重要技術(shù)。用戶可通過應(yīng)用基于FPGA的多分辨率屏幕測試卡獲取一塊顯示屏的亮度、對比度、色純、聚焦、水波紋、抖動、可讀性等技術(shù)參數(shù)并直接觀察顯示效果,從而對一塊顯示屏的好壞進行綜合性的評估。
2設(shè)計概念和過程描述
2.1基本設(shè)計概念和處理流程
基于FPGA的多分辨率屏幕測試卡主要基于Altera CycloneⅣEP4CE55F23C8N型FPGA、64M FLASH芯片、和一片AD7123的數(shù)模轉(zhuǎn)換芯片,并配有開關(guān)等10個按鍵、1個LCD顯示屏,以及5V/3A的直流電源。系統(tǒng)通過對外部信號作出響應(yīng)完成顯示屏測試,其基本流程如下:將基于FPGA的多分辨率屏幕測試卡與待測顯示屏通過VGA接口連接起來,打開產(chǎn)品和顯示屏的電源,默認(rèn)分辨率測試圖像便會自動出現(xiàn)在屏幕上,按照一定的時間間距進行圖片切換,一共8張圖片,切換完8張圖片后會重新從第一張圖片開始。在此期間,用戶可以通過按鍵來選擇上一幅圖片,下一幅圖片或是暫停切換圖片,也可以通過按鍵進行自動模式和手動模式的轉(zhuǎn)換。如果用戶發(fā)現(xiàn)當(dāng)前分辨率圖片不是顯示屏的最佳分辨率,即測試卡生成的圖像無法覆蓋到整個屏幕,用戶可以按分辨率切換鍵切換分辨率,切換完成后,測試圖片將重新從第1幅圖片開始顯示。在切換分辨率時,若測試卡的LCD屏幕上給出提示“已達到最佳分辨率”,則說明當(dāng)前分辨率已是最佳分辨率,不需要再進行按鍵調(diào)整。
2.2模塊的劃分和相關(guān)技術(shù)的運用
基于FPGA的多分辨率屏幕測試卡主要包括主控模塊、讀寫模塊、Flash讀寫控制模塊以及測試圖像生成模塊。在測試時,主控模塊的作用是調(diào)控測試圖像生成模塊、動態(tài)時鐘發(fā)生模塊以及Flash讀寫控制模塊使其協(xié)調(diào)工作,并接受外部按鍵信號傳給相應(yīng)模塊進行處理。圖像測試模塊的作用是生成不同分辨率的測試圖像。動態(tài)時鐘發(fā)生模塊則是對外部的分辨率切換信號進行處理,生成相應(yīng)的時鐘。Flash讀寫控制模塊則負(fù)責(zé)讀取存儲的動態(tài)PLL配置信息和字模信息。下面圖1介紹的是模塊的劃分以及模塊之間的聯(lián)系:
2.2.1多分辨率匹配技術(shù)
為了對不同顯示器的不同分辨率進行測試,測試卡采用多分辨率匹配技術(shù)完成分辨率的轉(zhuǎn)換,主要由IP核讀取動態(tài)PLL配置信息完成不同分辨率參數(shù)的讀取,圖2是分辨率調(diào)整的基本流程:
在測試卡完成初始化以后,主控模塊便開始接收外部信號,當(dāng)主控模塊接收到外部按鍵傳來的分辨率切換信號時,主控模塊將控制Flash讀寫模塊啟用IP核中的PLL模塊完成對Flash芯片中保存有不同分辨率配置信息的已經(jīng)預(yù)先寫好的mif文件的讀取,并將之傳給動態(tài)時鐘發(fā)生模塊。動態(tài)時鐘發(fā)生模塊將根據(jù)mif文件中的保留位、振蕩器等配置信息完成動態(tài)時鐘的調(diào)整,與此同時,動態(tài)時鐘生成模塊中的計數(shù)器開始工作,每一次外部分辨率信號傳來時,計數(shù)器都會進行調(diào)整,不同的計數(shù)器的值對應(yīng)不同的分辨率,然后再綜合時鐘信息完成分辨率的調(diào)整。目前測試卡能支持1920x1200、1600x900、800x600、1024x768、1680x1050、1440x900等多種分辨率。
2.2.2VGA邏輯圖像模擬技術(shù)
為了輸出不同分辨率的圖像來完成對不同分辨率的屏幕的評估,測試圖像生成模塊采用VGA邏輯圖像模擬技術(shù)來完成測試圖像的輸出。如圖3是VGB邏輯圖像模擬技術(shù)的基本流程:
VGA視頻傳輸協(xié)議是大多數(shù)廠商所共同支持的一大標(biāo)準(zhǔn),基于FPGA的多分辨率屏幕測試卡通過對行場信號的控制來支持VGA協(xié)議。為了對應(yīng)不同的分辨率,測試圖像生成模塊定義了多個二維數(shù)組,分別存儲著不同分辨率下的不同行場信號的相關(guān)參數(shù)。當(dāng)測試卡系統(tǒng)的動態(tài)時鐘發(fā)生模塊響應(yīng)了外部的分辨率切換信號后,測試圖像生成模塊會選擇存有對應(yīng)分辨率參數(shù)的二維數(shù)組來確定行場信號。當(dāng)行場信號確認(rèn)完畢后,將進行測試圖像生成。測試圖像生成主要包括兩部分:底層圖像生成和上層文字生成。下文將介紹兩種圖像的生成:
1)上層文字生成
為了更好的測試顯示屏的顯示效果,文字測試也是必不可少的一部分,基于FPGA的多分辨率屏幕測試卡采用字模信息讀取的方式來實現(xiàn)上層文字生成。首先需要利用字模提取軟件將所要生成的文字轉(zhuǎn)換成16進制數(shù),得到一個txt文檔,之后需要將其轉(zhuǎn)化為mif格式文件,然后再將得到的mif文件寫人Flash芯片。當(dāng)行場信號確定后,測試圖像生成模塊會通過Flash讀寫控制模塊得到存儲的字模信息,并在時鐘的驅(qū)動下,完成文字的輸出。
2)底層圖像生成
生成底層圖像主要是為了能讓用戶更加直接的觀察顯示屏質(zhì)量的好壞,為了達到這一目的,基于FPGA的多分辨率屏幕測試卡采用邏輯生成的方式來得到不同分辨率的底層圖像。VGA視屏傳輸協(xié)議牽涉到行、場同步時期,行、場消隱前肩,行場消隱后肩,行、場顯示時期,行、場掃描總時間等多個參數(shù),不同的分辨率相關(guān)參數(shù)也不相同。當(dāng)分辨率確定后,系統(tǒng)便開始行場掃描以實現(xiàn)數(shù)據(jù)的更新,數(shù)據(jù)會在每一個行顯示有效時期完成傳輸,在完成傳輸后會拉高顯示使能信號來點亮一行。當(dāng)完成了一次場掃描后,一幀圖像就已生成。利用人眼的視覺殘留效應(yīng),高速完成行場掃描便可實現(xiàn)穩(wěn)定的測試圖像輸出,速度的大小則由時鐘的頻率決定。
當(dāng)上層文字和底層圖像生成完成后,一起輸出便可得到穩(wěn)定的測試圖像。
3實測分析
為了確保測試卡的準(zhǔn)確度和適用范圍,測試卡的實測測試了大量的主流顯示屏,在此過程中,測試卡都能將測試圖片顯示在顯示屏上,并且流暢地實現(xiàn)了手動模式和自動模式的切換以及圖片的暫停。并且,當(dāng)達到了待測顯示屏的最佳分辨率時,測試卡能及時通過LCD屏告知用戶,幫助用戶更加方便的評估顯示屏質(zhì)量的好壞。通過這些測試,我們確認(rèn)測試卡的精準(zhǔn)度和測試卡的適用范圍都達到了很高的標(biāo)準(zhǔn),效果很好。圖4是用戶測試的實際操作。
4結(jié)論
本文就基于FPGA的多分辨率屏幕測試卡如何對待測屏幕進行測試及其相關(guān)原理進行了詳細(xì)的分析,各個模塊通過時鐘驅(qū)動來實現(xiàn)模塊之間的信號傳遞、參數(shù)讀取,以達到自動匹配像素時鐘,自動生成相應(yīng)分辨率測試圖像以完成評估的功能。在進行大量的實際測試期間,基于FPGA的多分辨率屏幕測試卡能對各種主流顯示屏進行測試,顯示屏上能完美的顯示出最佳分辨率圖片,最終實現(xiàn)了顯示屏質(zhì)量的綜合評估。endprint