EP7312的顯示控制器SED1356接口技術(shù)
摘要:通過(guò)對EPSON公司的大規模液晶顯示控制器芯片SED1356的介紹,分析嵌入式系統中視頻顯示電路的原理,并給出完整的硬件連接框圖有效的軟件實(shí)現方法。
關(guān)鍵詞:SED1356 EP7312 嵌入式系統 視頻顯示接口
引言
目前,在很多嵌入式系統的設計中需要將圖像數據轉換成視頻信號在終端上顯示,這就需要設計一個(gè)基于嵌入式系統的視頻顯示接口,以便把圖像數據轉換成適合終端顯示要求的信號,并控制其在終端上的顯示。由于嵌入式系統便攜式的特點(diǎn),要求視頻顯示電路不但功能強、性能好,而且體積小、重量輕、功耗低,同時(shí)要兼顧性?xún)r(jià)比。
現在東芝、飛利浦、泰鼎(Triend)、愛(ài)普生(EPSON)等公司都在生產(chǎn)高性能的圖形顯示控制器。EPSON公司的顯示控制器可分為小規模、中小規模和大規模三大類(lèi)。其中,小規??刂破饔糜谧址虻头直媛曙@示場(chǎng)合;中小規??刂破饔糜趩紊?40480,彩色320240顯示場(chǎng)合,它的顯存一般只有幾十KB;大規??刂破饔糜?00600顯示場(chǎng)合(64K色),具有高解像度,配用EDO-DRAM,顯存可高達2MB。在實(shí)際系統中,選用了EPSON公司的視頻接口芯片SED1356用于顯示圖像數據。
1 SED1356顯示控制芯片介紹
SED1356(S1D13506)是EPSON大規模顯示控制器家族中較新的一款,是以SED1354為基礎控制器發(fā)展起來(lái)的更多功能的LCD顯示控制器(SED1354只支持LCD接口,SED1355不支持TV接口)。它內置RAMDAC硬件X-Y軸轉置2維加速器,共有114個(gè)寄存器,可以靈活地對各種不同的顯示方式進(jìn)行設置,功能非常強大,可以和目前市場(chǎng)上流行的多種CPU總線(xiàn)兼容。它主要應用于低功率、低價(jià)位的嵌入式系統,如PDA、GPS、商務(wù)自動(dòng)化等。
SED1356支持最高為16位數據寬度的LED接口,使用FRM和調諧(dithering)技術(shù),可以在TFT LCD、CRT和TV上最高顯示64K顏色。它配置一個(gè)16位內存接口,可以支持最高2MB的EDO-DRAM。支持6色,256色和真彩色的顏色結構。對于TV電路,它支持TV的NTSC制式和PAL制式顯示。在NTSC制式中它支持從400396到720484多種分辨率。圖1所示為SED1356的典型應用框圖。
1.1 總線(xiàn)兼容性能
SED1356可以和多種CPU總線(xiàn)兼容,對于不同的CPU有不同的時(shí)序結構,通過(guò)對硬件的設計來(lái)選擇。SED1356支持以下CPU總線(xiàn)類(lèi)型(對于其它CPU的時(shí)序可以通過(guò)選擇類(lèi)似的時(shí)序結構來(lái)實(shí)現):
*SH-4/SH-3 Bus interface;
*Motorola MC68000/MC68030 Bus;
*Motorola PowerPC MPC82x;
*MIPS/ISA;
*PC Card(PCMCIA);
*Philips PR31500/PR31700/Toshiba TX3912;
*StrongARM;
*通用類(lèi)型總線(xiàn)。
另外它還可以通過(guò)寄存器來(lái)設置多種內裝存類(lèi)型。具體可以使用以下內存:
512KB的EDO-DRAM(2516);
512KB的FPM-DRAM(25616);
2MB的EDO-DRAM(116);
2MB的FPM-DRMA(116)。
*可以同時(shí)輸出數字信號和模擬信號,并且這兩種信號可以是各自獨立的,即可以同時(shí)管理LCD和CRT/TV并顯示不同的圖像。它支持16色,256色和真彩色的顏色結構。
*對于TV通道,它通過(guò)嵌入式RAMDAC(一種數模轉換方式)支持NTSC制式和PAL制式顯示。對于CRT通道,它通過(guò)嵌入式RAMDAC支持最高64K顏色顯示。對于數字RGB LCD通道,它支持最高64K顏色的TFT LCD顯示。
*可以旁通LUT,每個(gè)像素可直接映射15/16位顏色深度。
*它支持光標和墨水層,對于LCD和CRT或復合視頻接口,支持獨立的64642硬光標和2位的黑水層??梢栽趦却嬷写鎯Χ鄠€(gè)光標圖像,并且通過(guò)寄存器的設置,在一定時(shí)間,使用其中的一個(gè)。通過(guò)寄存器的設置可以設定光標在屏幕上的位置。
*具有SwivelView特性,支持圖像翻轉,可以對顯示圖像進(jìn)行90、180、270的硬翻轉。
*它支持虛擬圖像,可以通過(guò)對寄存器的設置在內存中存儲一個(gè)比實(shí)際圖像大的虛擬圖像,而屏幕就相當于一個(gè)窗口,可以移動(dòng)它來(lái)顯示虛擬圖像的一部分。
*在SED1356內部有一個(gè)2D的數據加速內核,可以實(shí)現數據塊的快速寫(xiě)、讀、移動(dòng)、填充等等。用以加速顯示圖像的刷新。
2 硬件設計
2.1 EP7312的總線(xiàn)接口
選用Cirrus Logic公司ARM720T微處理器的EP7312作為MPU。EP7312的內核電路工作在2.5V,而外圍電路工作3.3V,工業(yè)級產(chǎn)品的工作溫度為-40℃~85℃。集成了SDRAM和增強數字音頻接口,可動(dòng)態(tài)編程18MHz、36MHz、49MHz、74MH四種時(shí)鐘速率,其中在74MHz時(shí)鐘下,其穩定處理能力達到66MIPS,峰值處理能力達到74MIPS,近似等同于100MHz奔騰處理器。EP7312主要為超低功耗所設計,其功耗最大不超過(guò)90mW。本平臺選用74MHz時(shí)鐘。
EP7312配備以下接口:
①支持兩個(gè)外部存儲器接口,第一個(gè)是ROM/SRAM/Flash接口,具有可編程等待態(tài)和突發(fā)模式能力,6個(gè)片選控制6個(gè)256MB片(section)的可尋址空間,第二個(gè)是16或32位寬的可編程SDRAM接口,允許與2個(gè)256MB的SDRAM段直接連接。②2個(gè)16550兼容UARTs接口;③2個(gè)同步串行口;④88鍵盤(pán)口;⑤2個(gè)可編程占空比的96kHz時(shí)鐘輸出PWM脈沖寬度調制器(Pulse Width Modulator)接口;⑥四個(gè)通用目的輸入/輸出口(GPIO);⑦直接與DAC、ADC和CODEC相連的數字音頻接口。
2.2 SED1356與MPU總線(xiàn)接口
雖然SED1356可以和許多廠(chǎng)家的多種MPU直接相接,但它不支持具有ARM7內核的EP7312。因此通過(guò)分析SED1356這幾種現成的總線(xiàn)連接模式,筆者認為PC卡總線(xiàn)連接模式較為簡(jiǎn)單,稍加修改,配以必要的時(shí)序邏輯轉換關(guān)系就可以進(jìn)行對接??捎肕D[0:15]配置所使用的具體總線(xiàn)。
2.3 接口分析及實(shí)現
從上述接口信號的定義以及時(shí)序關(guān)系分析得出,EP7312的A[1:20]、DB[0:15]、NRST、NCS2、EXPRDY、NWR、NRD信號引腳和SED1356的A[1:20]、DB[0:15]、RESET、CS、WAIT、WE0、RD信號引腳可以分別進(jìn)行連接。對于SED1356的M/R信號引腳,可以用EP7312的A21進(jìn)行控制。這樣可以選擇不同的地址,進(jìn)而控制SED1356對應的內存和寄存器。
對于SED1356上的WE1和RD/WR信號引腳,處理起來(lái)稍微麻煩。經(jīng)分析得出:EP7312對外進(jìn)行讀寫(xiě)時(shí),根據半字(16位)和字(32位)操作方式的區別,HALFWORD和WORD引腳會(huì )產(chǎn)生相應信號變化,由于SED1356的顯存最高為16位,因此這兩個(gè)引腳將不加以區分。由于WE1控制高位讀寫(xiě),RD/WR控制低位讀寫(xiě),可用EP7312的A0信號確定半字和字節的區別。時(shí)序轉換關(guān)系由CPLD完成??偩€(xiàn)連接框圖如圖2所示。
CPLD中的VHDL語(yǔ)言如下:
CPLD_RD/WR=not((not A0)or WORD orHALFWORD);
CPLD_WE1=not(A0 or WORD or HALFWORD);
上述邏輯完全實(shí)現了SED1356對字節的讀寫(xiě),其中CPLD_RD/WR控制低位的讀寫(xiě),CPLD_WE1控制高位的讀寫(xiě)。
3 軟件實(shí)現
本電路的底層測試軟件均用C語(yǔ)言編程實(shí)現。圖3是SED1356的初始化流程圖。
下面對軟件實(shí)現中的主要部分進(jìn)行說(shuō)明。
3.1 虛擬圖像的設置
在2M內存中開(kāi)辟2塊顯存,1塊用于虛擬顯示(較大)、1塊用于屏幕尺寸顯示。前1塊主要用于地圖顯示目的,可以通過(guò)橫豎2個(gè)滾動(dòng)條實(shí)現地圖的全尺寸瀏覽,需開(kāi)辟的空間主要取決于需要瀏覽的最大圖形尺寸大??;后1塊主要顯示較為固定的信息,像菜單、固定圖像、界面等。本方案如采用每像素16bpp顯示方式,這樣在640480的屏幕上至少需要開(kāi)辟614400B的顯示內存。這樣做的好處是不必等待圖像數據的再次寫(xiě)入,屏幕圖形可以進(jìn)行快速切換,大大減少了轉向地圖顯示等待的時(shí)間。
3.2 調色板的設置
對于真彩色,也即15/16bpp的顏色格式,不必使用調色板,對于4/8bpp顏色格式,SED1356有1個(gè)LUT表格,有3組各自表示R-G-B三種顏色,每組有256個(gè)位置,每個(gè)位置可以存放4位數據??梢酝ㄟ^(guò)寄存器來(lái)讀寫(xiě)LUT表。當按照數據格式在內存中寫(xiě)入數據后,SED1356通過(guò)LUT表格來(lái)查找與顯示數據相對應的R-G-B顏色,從而在顯示器上顯示出相應的色彩。
3.3 光標圖像的設置
對于光標圖像,采用的是2bpp的顏色格式,SED1356控制的光標是6464大小的,共有4096個(gè)點(diǎn),也就是使用1024個(gè)字節就可以?xún)Υ嬉粋€(gè)光標圖像。光標的起始位置為左上角,可用寄存器設定它的X、Y值,如圖4所示。
圖5和圖6
設置光標的2bpp的數據如圖5所示。
3.4 RGB-565顏色顯示格式
本接口使用RGB-565格式的真彩色顯示數據格式,每種顏色需要占用2個(gè)字節,顏色排列并不規律,如圖6所示,圖6顯存設置為小端格式。
本軟件實(shí)現的特點(diǎn)是盡量模塊化,盡量將整個(gè)程序分成眾多模塊,用子程序來(lái)實(shí)現,這樣便于調試、修改。
結語(yǔ)
在全天候導航項目中,本液晶顯示模塊占用體積小,功耗低。能夠很好的對存儲的地圖數據進(jìn)行顯示取得了良好的應用效果。
評論