王震宇,王雪原,唐茂潔,范學(xué)仕
(中科芯集成電路有限公司,江蘇無錫 214072)
隨著LED顯示驅(qū)動(dòng)技術(shù)的更新?lián)Q代,小間距LED顯示驅(qū)動(dòng)正逐步成為主流技術(shù),在顯示屏、穿戴設(shè)備、照明設(shè)備及其他電子設(shè)備中得到廣泛應(yīng)用[1]。2019 年全球LED 市場突破500 億,近5 年復(fù)合增長率達(dá)到15%以上,小點(diǎn)間距LED顯示屏具有無縫拼接、模塊化維護(hù)、顯示均勻性好、色彩自然真實(shí)、畫面清晰等優(yōu)點(diǎn),逐漸成為研究熱點(diǎn)[2]。多路恒流LED 驅(qū)動(dòng)芯片具有高密度、高清晰度、寬角度、高亮度、高刷新率、高對比度、智能控制、節(jié)能環(huán)保等多種技術(shù)優(yōu)勢,在小點(diǎn)間距LED 驅(qū)動(dòng)芯片中得到廣泛應(yīng)用[3-4]。
在小間距LED顯示屏中,多路恒流LED 驅(qū)動(dòng)芯片采用傳統(tǒng)脈沖調(diào)制(Pulse with Modulation,PWM)控制方式控制LED 燈亮/暗時(shí)間,達(dá)到不同灰階亮度的顯示效果。當(dāng)所顯示的灰階亮度較低、連續(xù)不發(fā)光的時(shí)間較長時(shí),會出現(xiàn)因刷新率低、灰度等級不高而造成的閃爍現(xiàn)象[5]。鄭揚(yáng)旗等提出一種脈沖寬度可調(diào)變的發(fā)光二極管驅(qū)動(dòng)集成電路裝置,該裝置可以提高更新率,降低發(fā)光二極管閃爍現(xiàn)象[6]。張晉芳等提出一種新的PWM 控制信號的方法及裝置,該裝置只需要極小的硬件開銷且不需要對應(yīng)用環(huán)境提出更高的需求,即可以實(shí)現(xiàn)更好的驅(qū)動(dòng)效果[7]。王頂基于打散脈沖調(diào)制(Scrambled Pulse with Modulation,SPWM)打散算法,通過內(nèi)建雙SRAM 的存儲模式對輸入數(shù)據(jù)進(jìn)行處理和優(yōu)化,提高刷新率和低灰效果[8]。趙肅等提出一種亂序PWM算法提高芯片刷新率,采用PWM 合成技術(shù)提高LED 的色彩灰度等級[9]。陳培騰等在傳統(tǒng)PWM 基礎(chǔ)之上,結(jié)合雙邊觸發(fā)器技術(shù),該技術(shù)在一定程度上可以提高刷新率,避免閃爍[10]。
本文在PWM算法基礎(chǔ)之上,采用時(shí)鐘倍頻技術(shù),提出一種倍頻優(yōu)化打散脈沖調(diào)制(Optimize-Scrambled Pulse with Modulation,OS-PWM)算法,將一組數(shù)據(jù)的顯示時(shí)間打散成幾個(gè)較短的時(shí)間段,每個(gè)較短的時(shí)間段均保持原先的占空比,以增加LED顯示屏的整體刷新率,在不改變總灰度的前提下提高刷新率。
OS-PWM算法[11]是在打散SPWM算法的基礎(chǔ)之上,增加等級優(yōu)化功能,在不改變總體灰度的前提下通過增加打散組數(shù)提高刷新率和低灰顯示均勻性,從而使顯示畫面更加細(xì)膩,均勻性更好。該算法流程的具體步驟為:
1)16 位二進(jìn)制灰度數(shù)據(jù)D15D14...D1D0由外部接口串行輸入至驅(qū)動(dòng)芯片中,范圍為0~65535,刷新倍數(shù)為2K=1/2/4/8,在打散成64 個(gè)子周期的基礎(chǔ)上,進(jìn)一步打散提高的刷新倍數(shù);優(yōu)化等級G=0/1/2/3,要求每個(gè)子周期中每組PWM 脈沖不小于設(shè)定的參考時(shí)鐘周期數(shù)1/2/4/8 個(gè)GLCK;
2)將灰度數(shù)據(jù)劃分為10 位高階數(shù)據(jù)和6 位低階數(shù)據(jù),每個(gè)打散子周期的時(shí)鐘周期數(shù)為1024 個(gè)顯示時(shí)鐘GCLK,整個(gè)顯示周期最小打散的子周期個(gè)數(shù)為64。在設(shè)計(jì)中定義一個(gè)10 位的計(jì)數(shù)器CNT1 用于計(jì)數(shù)每個(gè)子周期時(shí)鐘周期數(shù),6 位的計(jì)數(shù)器CNT2 用于計(jì)數(shù)打散的子周期個(gè)數(shù),優(yōu)先計(jì)數(shù)CNT1,在每個(gè)時(shí)鐘上升沿加1,當(dāng)CNT1 溢出時(shí)CNT2 自動(dòng)累加;
3)根據(jù)刷新倍數(shù),將整個(gè)顯示周期打散成64/128/256/512 個(gè)子周期,此時(shí)每個(gè)子周期的時(shí)鐘周期數(shù)為1024/512/256/128 個(gè),整個(gè)顯示周期依舊為65536 個(gè)顯示時(shí)鐘GCLK;
4)根據(jù)刷新倍數(shù)和優(yōu)化等級,將10 位高階數(shù)據(jù)平均分配到64/128/256/512 個(gè)子周期,每個(gè)子周期中PWM 脈沖個(gè)數(shù)為TM=D1529-K-G+D1428-K-G+...+D6+K+G20,在每個(gè)子周期中,CNT1 從0~TM-1 依次輸出PWM 脈沖;
5)將剩余 6 位低階數(shù)據(jù)均勻分配到64/128/256/512 個(gè)子周期中,此時(shí)每個(gè)子周期中PWM脈沖個(gè)數(shù)TL不超過1/2/4/8 個(gè),并按照均勻分配原則分布到各子周期中,其均勻分布原則為按照CNT2[0:5]/ {CNT2 [9],CNT2 [0:5]}/ {CNT [8:9],CNT2 [0:5]}/{CNT[7:9],CNT2[0:5]}順序,在CNT1 為TM時(shí),依次將TL個(gè)PWM 脈沖輸出;
6)根據(jù)行數(shù)32 和通道數(shù)16,分別應(yīng)用32×16 次步驟1~5,生成PWM 控制LED顯示[12]。
表1 為采用OS-PWM算法的優(yōu)化等級和刷新倍率表,列出了詳細(xì)的刷新倍率、優(yōu)化等級、打散子周期和最小PWM 脈沖數(shù)之間的關(guān)系。
表1 優(yōu)化等級和刷新倍率表
在OS-PWM算法基礎(chǔ)之上,采用倍頻技術(shù),其原理是將原本從亮到滅的計(jì)數(shù)周期均勻打散成多個(gè)時(shí)間較短的子周期,所有子周期的占比總和與原先整個(gè)計(jì)數(shù)周期相同。這樣在不影響整體灰度的情況下,極大地提升了LED顯示屏的整體刷新率。結(jié)合時(shí)鐘雙沿計(jì)數(shù)技術(shù),可以在相同時(shí)間內(nèi)刷新更多的數(shù)據(jù),以此提升灰度等級和顯示的細(xì)膩度。倍頻OS-PWM算法將16 位數(shù)據(jù)分為9 位的高位數(shù)據(jù)MSB 和7 位的低位數(shù)據(jù)LSB。采用在圖像顯示中占有主要作用的高9 位的MSB 數(shù)據(jù)進(jìn)行打散的方式來提高LED顯示屏的刷新率。MSB 的計(jì)數(shù)周期打散后在每一個(gè)顯示子周期中都會進(jìn)行計(jì)數(shù),再加上一次LSB 的計(jì)數(shù)周期(根據(jù)具體數(shù)值平均分配到不同的顯示子周期中),就可以達(dá)到和未分解的PWM 一樣的分辨率[13]。
將一個(gè)顯示周期T 分為128/256 等份,每份以9位256t 或128t(采用時(shí)鐘倍頻技術(shù),雙沿計(jì)數(shù))為基礎(chǔ),和一個(gè)低位數(shù)據(jù)的計(jì)時(shí)時(shí)鐘周期t 組成512 或256個(gè)計(jì)數(shù)周期。這樣總計(jì)仍為256t×2×128=65536t=T(128t×2×256=65536t=T),總灰度不變,但刷新率提高了128 倍或256 倍,即在64 倍的基礎(chǔ)上提升2 倍或4倍(下同),倍頻OS-PWM算法打散控制圖如圖1 所示。
圖1 倍頻OS-PWM算法打散控制圖
同時(shí)定義2 個(gè)PWM顯示計(jì)數(shù)器CNT1(9 位)、組數(shù)計(jì)數(shù)器CNT2(7 位)、行計(jì)數(shù)器以及下鬼影控制信號和首行偏暗調(diào)節(jié)指示信號。CNT1 用于計(jì)數(shù)每組PWM周期顯示所需的時(shí)鐘數(shù)(即灰度數(shù)值),CNT2 用于計(jì)數(shù)打散組數(shù)實(shí)現(xiàn)均勻打散,CNT1 和CNT2 組合實(shí)現(xiàn)PWM 計(jì)數(shù)控制。5 位行計(jì)數(shù)器記錄行數(shù)變化,消影調(diào)節(jié)指示信號EN_GHOST 需要4.5 個(gè)顯示時(shí)鐘GCLK,在當(dāng)前行通道開啟前拉低,通道關(guān)閉后拉高下一行消影,預(yù)留足夠充電時(shí)間,解決下鬼影問題;首行在通道開啟前拉高,通道關(guān)閉時(shí)拉低,由模擬部分完成首行偏暗調(diào)節(jié),解決首行偏暗問題。
為提升灰度等級,采用時(shí)鐘雙沿計(jì)數(shù)的方式,定義兩個(gè)計(jì)數(shù)器CNT1_ODD 和CNT1_EVEN,分別在顯示時(shí)鐘GCLK 的上升沿和下降沿進(jìn)行計(jì)數(shù),通過控制信號和兩個(gè)計(jì)數(shù)器異或運(yùn)算得到一個(gè)雙沿計(jì)數(shù)器。在關(guān)閉倍頻功能時(shí),只有CNT1_ODD 工作,在顯示時(shí)鐘GCLK 上升沿計(jì)數(shù),顯示計(jì)數(shù)器CNT1 直接由CNT1_ODD 得到。在開啟倍頻功能時(shí),雙沿計(jì)數(shù)工作,CNT1_ODD 在時(shí)鐘上升沿翻轉(zhuǎn),CNT1_EVEN 在時(shí)鐘下降沿翻轉(zhuǎn),最終的顯示計(jì)數(shù)器CNT1 在顯示時(shí)鐘GCLK 高電平時(shí)選擇CNT1_EVEN,顯示時(shí)鐘GCLK低電平選擇CNT1_ODD,CNT1 選擇如表2 所示。
表2 CNT1 選擇表
一幀16 bit 的數(shù)據(jù)大小為65536,即共需要65536個(gè)時(shí)鐘,在關(guān)閉倍頻的情況下,打散128 或256 組分別需要512 或256 個(gè)時(shí)鐘,相對于打散64 組,打散128或256 組的刷新倍率依次提升2 倍或4 倍。在開啟倍頻的情況下,雙沿同時(shí)計(jì)數(shù),顯示相同數(shù)據(jù)所需要的時(shí)間減少一半,即時(shí)鐘個(gè)數(shù)為原來的1/2。此時(shí),同樣一幀16 bit 的數(shù)據(jù)打散128 或256 組則分別需要256或128 個(gè)時(shí)鐘,在相同時(shí)間內(nèi),相對于打散64 組,刷新率提升4 倍或8 倍,倍頻OS-PWM算法刷新倍率如表3 所示。
表3 倍頻OS-PWM算法刷新倍率表
32 行掃16 通道恒流LED顯示驅(qū)動(dòng)芯片的實(shí)際具體應(yīng)用如圖2 所示。在每一個(gè)打散周期內(nèi),從0~31行依次進(jìn)行切換輸出。在總的時(shí)鐘周期不變的情況下,打散組數(shù)可配置為128 組和256 組,以應(yīng)對不同場合的應(yīng)用需求,由此實(shí)現(xiàn)不同的刷新率需求。分組數(shù)目越多,打散情況越好,刷新率越高,但同時(shí)輸出開關(guān)的開關(guān)頻率也越高。在每一個(gè)打散的組中,PWM 波形的脈寬將會最大可能平均。在倍頻OS-PWM 模式被配置為打散128 組,分別命名為PERIOD0、PERIOD1、PERIOD2、......、PERIOD127,如果灰度為256,每組脈寬的最大可能平均將會為2 個(gè)顯示時(shí)鐘GCLK周期,如果灰度為132,除了PERIOD0、PERIOD64、PERIOD32、PERIOD96 中的脈寬為2 個(gè)顯示時(shí)鐘GCLK 周期,其他仍為1 個(gè)顯示時(shí)鐘GCLK 周期,即平均后多余的4 個(gè)灰度將會平均分配到4 組里,每組之間隔32 組以達(dá)到盡可能的平均分布。
圖2 應(yīng)用倍頻OS-PWM算法的32 行掃時(shí)序
通過對比OS-PWM算法和倍頻OS-PWM算法,可以發(fā)現(xiàn)最高刷新率同樣達(dá)到8 倍刷新率,但倍頻OS-PWM算法復(fù)雜度降低一半,整體電路面積減少40%。
基于倍頻OS-PWM算法,設(shè)計(jì)的32 行掃恒流PWM 輸出LED 驅(qū)動(dòng)芯片是一款小間距大屏LED顯示屏驅(qū)動(dòng)芯片,內(nèi)建倍頻OS-PWM 高刷新算法,專門針對小點(diǎn)間距顯示屏存在的低灰問題做出優(yōu)化處理,可以有效解決傳統(tǒng)的PWM 刷新率較低、低灰顯示均勻性差等問題。
基于LINUX 系統(tǒng),采用專業(yè)EDA 工具,對搭載此算法的顯示驅(qū)動(dòng)芯片進(jìn)行全局仿真。
仿真結(jié)果見圖3,gclk_double 為開啟倍頻算法使能信號,高有效;pwm[15:0]為16 路的PWM 輸出,高電平表示輸出有效,顯示時(shí)鐘GCLK 為35 MHz,每個(gè)時(shí)鐘周期為28 ns。從pwm[15]到pwm[0],打開時(shí)間依次減半。
關(guān)閉倍頻gclk_double=0,打散子周期數(shù)為128 的仿真結(jié)果見圖3,打散128 組,每組65536/128=512 個(gè)顯示時(shí)鐘周期,每個(gè)打散子周期為512×28=14336 ns,與仿真結(jié)果一致。
圖3 關(guān)閉倍頻,打散子周期數(shù)128 的仿真結(jié)果
關(guān)閉倍頻gclk_double=0,打散子周期數(shù)為256組,每組65536/256=256 個(gè)顯示時(shí)鐘周期,每個(gè)打散子周期為256×28=7168 ns,與仿真結(jié)果一致。
開啟倍頻gclk_double=1,打散子周期數(shù)為256組,每組65536/256=256 個(gè)顯示時(shí)鐘周期,采用時(shí)鐘倍頻技術(shù),每個(gè)打散子周期為256/2×28=3584 ns,與仿真結(jié)果一致。
搭載該算法的芯片已經(jīng)通過測試,對比搭載OS-PWM算法的芯片[8],面積由980×1500=1.47 μm2縮減到910×980=0.891 μm2,面積減少40.13%。圖4 為使用該算法芯片的顯示屏與同類競品在相同配置下的實(shí)測結(jié)果對比,從圖中可以看出,該芯片低灰段的長度是同類競品的兩倍,具有更好的顯示均勻性。
圖4 搭載該算法的芯片與同類競品[8]實(shí)測結(jié)果對比
本文針對小點(diǎn)間距LED顯示屏中存在的刷新率較低和低灰顯示均勻性差等問題,基于OS-PWM算法,采用時(shí)鐘倍頻技術(shù),提出一種倍頻OS-PWM算法。將一組數(shù)據(jù)的顯示時(shí)間打散成幾個(gè)較短的時(shí)間段,每個(gè)較短的時(shí)間段均保持原先的占空比,以增加LED顯示屏的整體刷新率,在不改變總灰度的前提下提高了刷新率,算法復(fù)雜度減少一半,并對算法進(jìn)行等級優(yōu)化,提升了顯示均勻性?;谠撍惴ㄔO(shè)計(jì)的LED 驅(qū)動(dòng)芯片,面積可減少40%。