高文靜 李路軍
摘 要:本文設(shè)計(jì)一款適用于高端顯示設(shè)備的圖像發(fā)生測(cè)試系統(tǒng)。核心框架為上位機(jī)+MCU+FPGA+DDR3,通過(guò)上位機(jī)傳輸指令或按鍵組合來(lái)控制單片機(jī)實(shí)現(xiàn)RGB數(shù)據(jù)提取、圖像像素修改、文字顯示與縮放、PIP顯示等功能,數(shù)據(jù)處理完成后單片機(jī)將其傳輸?shù)紽PGA,F(xiàn)PGA再利用雙緩存技術(shù),將圖像數(shù)據(jù)高速穩(wěn)定的傳輸?shù)斤@示器。
關(guān)鍵詞:圖像發(fā)生測(cè)試系統(tǒng) FPGA 單片機(jī)
一、總體描述
本文所設(shè)計(jì)的設(shè)備由上位機(jī)、flash存儲(chǔ)器、單片機(jī)系統(tǒng)、FPGA、SRAM組成。上位機(jī)通過(guò)RS232接口傳輸命令或者數(shù)據(jù)到單片機(jī)系統(tǒng),單片機(jī)按照協(xié)議或通過(guò)按鍵組合識(shí)別命令后執(zhí)行圖像存儲(chǔ)、圖像讀取、圖像處理或其他操作。單片機(jī)將處理好的圖像數(shù)據(jù)經(jīng)8080接口傳輸?shù)紽PGA中,F(xiàn)PGA將這些數(shù)據(jù)直接傳輸?shù)絊RAM中,設(shè)備采用雙緩存技術(shù),SRAM分為兩個(gè)區(qū),其中一個(gè)接收?qǐng)D像數(shù)據(jù),另一個(gè)通過(guò)RGB接口發(fā)送圖像數(shù)據(jù),發(fā)送完成后立刻轉(zhuǎn)為接收狀態(tài),另一個(gè)開始發(fā)送數(shù)據(jù),循環(huán)往復(fù)。設(shè)備末端由專用芯片將RGB信號(hào)轉(zhuǎn)為MIPI。
二、技術(shù)路線
(1)單片機(jī)模塊設(shè)計(jì)
1)RS232接口及串行傳輸
采用半雙工異步串行通訊傳送的幀格式為 10位,1位0電平起始位,8 位數(shù)據(jù)(低位在前)和1位停止位,無(wú)校驗(yàn)位。
圖像操作命令包括上位機(jī)圖像數(shù)據(jù)傳輸、圖像數(shù)據(jù)存儲(chǔ)、圖像數(shù)據(jù)顯示、顯示字符、文字縮放、PIP顯示和幾何圖形加速器。
可編程電池操作包括電源通道選擇及電壓設(shè)計(jì)、電流電壓監(jiān)控和電流限流。
2)按鍵
按鍵提供功能有:開啟和關(guān)閉PIP顯示、選擇PIP視窗、更換圖片、啟動(dòng)和關(guān)閉自動(dòng)換圖顯示、啟動(dòng)或關(guān)閉幾何圖形加速器、選擇畫點(diǎn)、線、曲線、圓、矩形、開啟或關(guān)閉電源通道、增加或減少電壓值、增加或減少限流電流值。
為了實(shí)現(xiàn)資源的充分利用,所以按鍵應(yīng)用功能菜單的形式。五個(gè)按鍵可以完成以上工作:功能選擇鍵、上移、下移、確認(rèn)、退出/取消。
功能選擇鍵按一次后即可利用上下鍵選擇一級(jí)功能,按確認(rèn)后可利用上下鍵進(jìn)行下一級(jí)功能選擇,按取消可回到上一級(jí)功能選擇。
3)MCU與U盤通信
MCU與U盤通信采用CH375接口芯片方案,可以省去大量的USB通信協(xié)議的編寫。CH375 的USB主機(jī)方式支持常用的USB全速設(shè)備,外部單片機(jī)可以通過(guò)CH375按照相應(yīng)的USB 協(xié)議與USB 設(shè)備通訊。CH375 還內(nèi)置了處理Mass-Storage 海量存儲(chǔ)設(shè)備的專用通訊協(xié)議的固件,外部單片機(jī)可以直接以扇區(qū)為基本單位讀寫常用的USB 存儲(chǔ)設(shè)備(包括USB 硬盤/USB 閃存盤/U 盤)。
4)MCU圖像處理
由于單片機(jī)內(nèi)部SRAM資源有限,所以單片機(jī)對(duì)于圖像的處理只能是單行或者單列進(jìn)行。因?yàn)橄褚环?K的高清圖像其單純的RGB圖像數(shù)據(jù)就達(dá)到了1440*2880*3B=11.8M,一般的單片機(jī)沒(méi)有如此大的內(nèi)存加載一整副圖像數(shù)據(jù)。
為提高效率,在存儲(chǔ)器中存入新的圖像后,單片機(jī)會(huì)在空閑時(shí)間自動(dòng)對(duì)其解壓,轉(zhuǎn)換格式,并將處理后得到的RGB數(shù)據(jù)存儲(chǔ)在存儲(chǔ)器。存儲(chǔ)格式為,RGB數(shù)據(jù)標(biāo)志+原圖像地址+像素行+列+RGB數(shù)據(jù)。
圖像處理部分主要包括以下4點(diǎn):
1)從bmp、jpg、png文件中提取RGB數(shù)據(jù)
2)圖像像素的修改
圖像信息中一般包含此圖像的像素信息,設(shè)備采取的圖像像素的處理方法是:若圖像像素與顯示像素不一致,則先從各種文件中將RGB數(shù)據(jù)提取出來(lái),再修改像素。若顯示像素大,則將提取出的RGB數(shù)據(jù)按一定規(guī)律行行擴(kuò)充,后進(jìn)行列擴(kuò)充,反之則先進(jìn)行行縮小,后進(jìn)行列縮小。
3)文字放大縮小
文字信息也是轉(zhuǎn)換為位圖數(shù)據(jù)存儲(chǔ),分四部分分別存儲(chǔ)ISO/IEC 8859-1、2、4、5,可根據(jù) ASCII碼索引。文字的放大縮小類似像素修改,例如將一個(gè)文字水平放大兩倍,就可以將文字的位圖信息每列復(fù)制一次即可,列數(shù)增加到之前的兩倍。
4)PIP顯示窗口
當(dāng)系統(tǒng)接收到PIP命令后,單片機(jī)從存儲(chǔ)器中分別調(diào)出兩幅圖像的數(shù)據(jù),將PIP1圖像在PIP2顯示區(qū)域的數(shù)據(jù)更換為PIP2要顯示圖像的數(shù)據(jù)。例如:一個(gè)2K屏,要求其利用PIP技術(shù)在左上角顯示一個(gè)320*240的圖像。則將正在顯示圖像的前320行的前240列數(shù)據(jù)全部更換為一副像素是320*240的圖像。
5) 8080接口
8080模式通常有下列接口信號(hào): RES(復(fù)位線),DB0~DB7(雙向數(shù)據(jù)線),D/I(數(shù)據(jù)/指令選擇線,1:數(shù)據(jù)讀寫,0:命令讀寫),CS(片選信號(hào)線,如果有多片組合,可有多條片選信號(hào)線),/WR(MPU向LCD寫入數(shù)據(jù)控制線),/RD(MPU從LCD讀入數(shù)據(jù)控制線); 下圖為8080接口讀寫時(shí)序。
(2)FPGA模塊設(shè)計(jì)
FPGA在整個(gè)系統(tǒng)的作用是實(shí)現(xiàn)通信,即將8080口的數(shù)據(jù)傳輸?shù)絊RAM中,由于單片機(jī)對(duì)圖像數(shù)據(jù)是單行或單列形式處理,因此FPGA應(yīng)控制 SRAM等待一副圖像都處理完成后才將其傳輸?shù)斤@示器上。
FPGA利用雙緩存技術(shù)控制SRAM,兩個(gè)緩存之間一個(gè)接受數(shù)據(jù)一個(gè)顯示數(shù)據(jù),并行處理。
對(duì)于單緩存技術(shù),F(xiàn)PGA可由一下幾個(gè)狀態(tài)完成:
1)休眠/等待數(shù)據(jù)傳輸
2)數(shù)據(jù)由接口傳入SRAM
3)一副圖像傳輸完成后,將數(shù)據(jù)經(jīng)RGB接口輸出
通過(guò)FPGA對(duì)DDR3進(jìn)行驅(qū)動(dòng),DDR3的Mode Register 有四個(gè),分別為MR0、MR1、MR2 和MR3,當(dāng)四個(gè)控制命令信號(hào)均為低電平時(shí),即可通過(guò)Bank 選擇位對(duì)模式寄存器進(jìn)行選擇; Refresh操作分為Auto Refresh 與Self Refresh 兩種,其中不論是何種Refresh 方式,都不需要外部提供行地址信息,因?yàn)檫@是一個(gè)內(nèi)部的自動(dòng)操作;DDR3 在進(jìn)行讀寫操作時(shí),內(nèi)存會(huì)給出一個(gè)與數(shù)據(jù)同步的DQS 信號(hào),用來(lái)在一個(gè)時(shí)鐘周期內(nèi)準(zhǔn)確地區(qū)分出每個(gè)傳輸周期,提高了接收方接收數(shù)據(jù)的準(zhǔn)確度。
三、總結(jié)
顯示設(shè)備作為計(jì)算機(jī)系統(tǒng)重要的人機(jī)交互設(shè)備,包括顯示器,投影儀等,與安防監(jiān)控、教育教學(xué)、娛樂(lè)媒體等行業(yè)息息相關(guān),顯示設(shè)備的好壞,決定著各行各業(yè)工作能否順利開展。因此針對(duì)顯示設(shè)備進(jìn)行測(cè)試和試驗(yàn)必不可少,且一款傳輸速率高、價(jià)格適中的圖像發(fā)生測(cè)試系統(tǒng)擁有巨大的市場(chǎng)。本文結(jié)合了MCU與FPGA的優(yōu)勢(shì)??梢宰龅郊瓤梢钥焖儆行У膶?duì)圖像數(shù)據(jù)處理,又可以高速傳輸,同時(shí)成本較低,開發(fā)周期較短。
參考文獻(xiàn):
[1]李華 基于FPGA的圖像發(fā)生器的設(shè)計(jì) 《商洛學(xué)院學(xué)報(bào)2015年04期》
[2]張濤、國(guó)澄明、俞斯樂(lè) 基于FPGA的HDTV顯示器測(cè)試圖案發(fā)生器《電子測(cè)量與儀器學(xué)報(bào)2006.20(2):101-105》