一种优化通道间耦合影响的LED驱动芯片算法的制作方法

文档序号:33046208发布日期:2023-01-24 22:31阅读:41来源:国知局
一种优化通道间耦合影响的LED驱动芯片算法的制作方法
一种优化通道间耦合影响的led驱动芯片算法
技术领域
1.本发明涉及led显示技术领域,特别涉及一种优化通道间耦合影响的led驱动芯片算法。


背景技术:

2.led作为新型半导体照明材料,具有功耗低、寿命长、体积小、成本低等众多优秀特性,目前已得到广泛应用;在照明设备、显示屏及其它电子产品等领域已经成为不可替代的重要媒介。
3.但随着人们生活质量的提升,对led显示屏质量的要求也越来越高,特别对于led显示图像的清晰、细腻的显示画面关注很高。
4.然而目前诸多成熟产品中,仍然存在诸如首行偏暗、色块、麻点等显示问题,特别是在输入灰度数据较低时,因为打开时间较短,很容易受到芯片内部或者外部电路及环境的耦合干扰;甚至两个不同通道,不同灰度之间都会存在耦合干扰,导致显示画面出现如屏幕闪烁的现象以及色块等问题,从而导致显示效果较差。


技术实现要素:

5.本发明的目的在于提供一种优化通道间耦合影响的led驱动芯片算法,以解决背景技术中的问题。
6.为解决上述技术问题,本发明提供了一种优化通道间耦合影响的led驱动芯片算法,包括:
7.步骤1、根据输入的显示灰度数据位宽c,将一个led显示周期时间划分为2a个子周期,每个子周期的大小为2b个gclk周期,则数据关系为c=a+b,其中c为正整数,a、b为小于c的非负整数;
8.步骤2、设置寄存器x用于配置灰度数据优化等级;
9.步骤3、根据随机序列产生器生成随机序列,每个通道对应一个随机序列产生器,根据通道号的不同以及打开组数的不同产生不同的序列s1~sn,其中随机序列的值p表示会度数据在每个子周期拉高的起始点;
10.步骤4、通过比较随机序列的值p和优化等级x的大小对起始点进行修正,从而保证在一个子周期内pwm为连续拉高,防止溢出而产生断裂;
11.步骤5、配置补偿寄存器,根据灰度数据的大小,若灰度数据小于配置值w,则对灰度进行补偿,补偿等级通过所述补偿寄存器配置;
12.步骤6、根据优化等级x,将灰度数据平均分配到2a个子周期中。
13.在一种实施方式中,所述步骤1中,输入的显示灰度数据为n位二进制灰度数据d
n-1dn-2

d1d0,由外部输入至驱动芯片中。
14.在一种实施方式中,所述步骤2中,能够根据实际需要设置寄存器x1、x2、...配置不同的优化等级。
15.在一种实施方式中,所述步骤4中,每个通道产生的随机序列在每个子周期中刷新出一个新的随机数作为该子周期pwm拉高的起始点,以实现相同通道不同子周期的打开时间不同。
16.在一种实施方式中,所述步骤6中,当分配在子周期中的灰度数据加上随机值大于子周期的时间时,对随机值进行修正;取该灰度数据的反作为新的随机值,即新的pwm拉高的起点。
17.本发明提供的一种优化通道间耦合影响的led驱动芯片算法,具有以下有益效果:
18.(1)通过随机序列产生器实现显示驱动芯片各通道之间的打开时间不同,以解决各通道间相互的耦合影响带来的诸如色块、高对比耦合等问题,提升了显示质量;
19.(2)通过补偿寄存器配置实现了低灰度打开宽度补偿,用于补偿在低灰度时不容易打开等情况,配合各通道不同时间打开机制,有效提高了led显示效果。
附图说明
20.图1是本发明提出的一种优化通道间耦合影响的led驱动芯片算法流程示意图。
21.图2为随机位置产生模组原理图。
22.图3为随机位置产生模组框图。
23.图4低灰色阶优化时序示意图。
24.图5第四组各通道打开时序示意图。
25.图6第五组各通道打开时序示意图。
26.图7特殊灰度打开处理时序示意图。
27.图8低灰补偿时序示意图。
具体实施方式
28.以下结合附图和具体实施例对本发明提出的一种优化通道间耦合影响的led驱动芯片算法作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
29.本发明提供了一种优化通道间耦合影响的led驱动芯片算法,其流程如图1所示,包括如下步骤:
30.步骤s11、根据输入的显示灰度数据位宽c,将一个led显示周期时间划分为2a个子周期,每个子周期的大小为2b个gclk周期,则数据关系为c=a+b,其中c为正整数,a、b为小于c的非负整数;其中输入的显示灰度数据为n位二进制灰度数据d
n-1dn-2

d1d0,由外部输入至驱动芯片中;
31.步骤s12、设置寄存器x用于配置灰度数据优化等级,并且能够根据实际需要设置寄存器x1、x2、...以配置不同的优化等级;
32.步骤s13、根据随机序列产生器生成随机序列,每个通道对应一个随机序列产生器,根据通道号的不同以及打开组数的不同产生不同的序列s1~sn,其中随机序列的值p表示会度数据在每个子周期拉高的起始点;这样保证每个通道产生不同的随机序列,即每个子周期内每个通道pwm拉高的起始点不一致,从而实现错通道间时打开的目的;
33.步骤s14、通过比较随机序列的值p和优化等级x的大小对起始点进行修正,从而保证在一个子周期内pwm为连续拉高,防止溢出而产生断裂;每个通道产生的随机序列在每个子周期中刷新出一个新的随机数作为该子周期pwm拉高的起始点,以实现相同通道不同子周期的打开时间不同;
34.步骤s15、配置补偿寄存器,根据灰度数据的大小,若灰度数据小于配置值w,则对灰度进行补偿,补偿等级通过所述补偿寄存器配置;
35.步骤s16、根据优化等级x,将灰度数据平均分配到2a个子周期中;当分配在子周期中的灰度数据加上随机值大于子周期的时间时,对随机值进行修正;取该灰度数据的反作为新的随机值,即新的pwm拉高的起点,从而防止因灰度数据或随机数过大导致的在子周期中pwm波形断裂的情况出现,保证pwm波形的连续性。
36.本发明适用于多通道恒流led显示驱动芯片,目前比较常见的显示驱动s-pwm算法中,在每个打散组中,各个通道的打开起始点都为一致的,例如都是从0开始。然而,在实际模拟电路中,由于寄生电容的存在,电路之间相互耦合普遍存在,通道之间打开与关闭都会对其他通道产生影响,在低灰场景下尤为明显。若相邻通道为高亮灰度,则低灰部分可能会被耦合带亮,由此会导致led显示屏的高对比耦合问题。针对这个问题,增加各通道间打开位置不同功能,以此来降低通道间的相互耦合作用。
37.若直接只是采用上述方法,能够降低通道之间相互耦合的影响,但是可能会导致低灰时通道打不开的情况;这是因为在实际模拟电路中,上升沿和下降沿并不是完美的垂直,而是存在一定的倾斜,使得所表示的灰度数据相对原值来说有所减小。在灰度数据较小时,会对显示效果影响明显。对此,本发明中设置补偿寄存器,若存在低灰打开不足时,对打开宽度进行补偿,从而进一步提高显示效果。在本发明中,对不同通道、相同通道不同打开组之间的pwm打开位置都进行了不同设置,打开位置的设定采用一个随机序列产生器,采用线性反馈移位寄存器实现随机序列的产生,即通过寄存器左移或右移,不断的做异或运算,来产生新数字作为起始打开位置,具体原理如图2所示,其中,s1~sn根据通道不同而不同。图3为随机位置产生模组框图,通过控制模组初始值init设定实现各通道不同序列的输出,即{s1,

,sn}具体值,每个序列的各个值分别表示不同打散组的起始打开位置,通过控制使能信号en实现模组的输出,另外clk为时钟信号输入,rst_n为复位信号输入。
38.下面将对本发明算法进行实例解析。具体步骤如下:
39.(1)首先设定低灰优化等级,该值为寄存器可配,此处设定x为4个gclk。若整个显示周期共有2a个子周期,每个周期2b个gclk周期,则在每个显示周期中,允许的最小pwm打开宽度为4个gclk,具体如图4所示。
40.(2)根据通道的不同以及打开组数的不同配置不同的随机序列产生器的初始值,此处根据通道号设置,通道0-15的序列号也即随机序列产生器的初始值。根据步骤1设定,随机序列产生器的输出数据范围为2b个gclk周期。举例,若每个子周期的gclk数为16,通道1初始值为1,则该随机序列产生器的输出为{1,8,12,14,15,7,11,5,10,13,6,3,9,4,2},分别对应该通道各打散组的起始打开位置,若打散组数大于序列中起始位置个数,则循环复用;通道2初始值为2,则该随机序列产生器的输出为{2,1,8,12,14,15,7,11,5,10,13,6,3,9,4};通道3初始值为3,则该随机序列产生器的输出为{3,9,4,2,1,8,12,14,15,7,11,5,10,13,6};通道4初始值为4,则该随机序列产生器的输出为{4,2,1,8,12,14,15,7,11,5,
10,13,6,3,9};通道5初始值为5,则该随机序列产生器的输出为{5,10,13,6,3,9,4,2,1,8,12,14,15,7,11};通道6初始值为6,则该随机序列产生器的输出为{6,3,9,4,2,1,8,12,14,15,7,11,5,10,13};通道7初始值为7,则该随机序列产生器的输出为{7,11,5,10,13,6,3,9,4,2,1,8,12,14,15};通道8初始值为8,则该随机序列产生器的输出为{8,12,14,15,7,11,5,10,13,6,3,9,4,2,1};通道9初始值为9,则该随机序列产生器的输出为{9,4,2,1,8,12,14,15,7,11,5,10,13,6,3};通道10初始值为10,则该随机序列产生器的输出为{10,13,6,3,9,4,2,1,8,12,14,15,7,11,5};通道11初始值为11,则该随机序列产生器的输出为{11,5,10,13,6,3,9,4,2,1,8,12,14,15,7};通道12初始值为12,则该随机序列产生器的输出为{12,14,15,7,11,5,10,13,6,3,9,4,2,1,8};通道13初始值为13,则该随机序列产生器的输出为{13,6,3,9,4,2,1,8,12,14,15,7,11,5,10};通道14初始值为14,则该随机序列产生器的输出为{14,15,7,11,5,10,13,6,3,9,4,2,1,8,12};通道15初始值为15,则该随机序列产生器的输出为{15,7,11,5,10,13,6,3,9,4,2,1,8,12,14};通道0初始值为0,即该通道保持正常初始位置从第0个gclk开始打开。若a》16,则通道0初始值可为1,通道1初始值为2,以此类推,只要满足小于a即可。
41.(3)根据步骤3得到的各通道的打开序列可以得到各通道在每组中的打开位置变化情况。如在第1组各通道打开位置为{0,8,1,9,2,10,3,11,12,4,13,5,14,16,15,7},第2组各通道打开位置为{0,12,8,4,1,13,9,5,14,2,6,10,15,3,7,11},第15组各通道打开位置为{0,2,4,6,9,11,13,15,1,3,5,7,8,10,12,14}。举例,图5为在a等于6,即打开组数为64组时,通道0-15初始打开位置为1-16时第四组各通道打开时序图;图6为第五组各通道打开时序图,注意,图中gclk采用双沿采样,故一个gclk周期能够显示两个灰度周期。由图可见,每组中各通道打开位置不会相同,且在a》通道数时,相同通道不同组之间也会不同。从而实现算法中各部分打开位置的不同性,从而实现错通道间时打开的目的。
42.(4)由步骤1可得低灰优化设定x为4个gclk,且每组内打开时间为64个gclk。通过比较随机序列的值p和优化等级x的大小对起始点进行修正,从而保证在一个子周期内pwm为连续拉高,防止溢出而产生断裂。此时,若灰度值大于60,即需要满足灰度值+x≤64,若本身在该打开组打开的宽度大于x,则需要满足灰度值+打开宽度≤64,从而保证在一个子周期内pwm为连续拉高,防止溢出而产生断裂。图7为举例说明,分别列举通道0-5在不满足以上情况下时对起始位置进行修正后的打开时序。采用方法即为若灰度值+x》64或灰度值+打开宽度》64,则各通道打开起始位置加上灰度值等于该组gclk数,即关闭位置相同,在最后一个gclk处,从而尽可能保证各通道打开位置的不同。
43.(5)根据以上步骤相关设定,配置低灰补偿寄存器,寄存器可设定为多级补偿,如4bit寄存器实现16级补偿等级配置,具体每一级补偿时间视显示效果而定。本发明中设定5bit配置寄存器,并规定每级补偿步进为4纳秒,即配置范围为4-128纳秒。应用在灰度值较低时,实现方案为补偿在打开灰度较小的组之中,如图8所示,第一组打开2个gclk,第二组打开一个gclk,则配置的低灰补偿值会加在第二组之中,目的为补偿更小灰度值,同时使得各组的打开时间更加均衡。通过配置低灰补偿寄存器能够使显示效果更均匀及容易打开等,从而进一步实现低灰更好的显示效果。
44.上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护
范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1