CN115831032B - 芯片温漂处理方法及装置 - Google Patents
芯片温漂处理方法及装置 Download PDFInfo
- Publication number
- CN115831032B CN115831032B CN202310133483.1A CN202310133483A CN115831032B CN 115831032 B CN115831032 B CN 115831032B CN 202310133483 A CN202310133483 A CN 202310133483A CN 115831032 B CN115831032 B CN 115831032B
- Authority
- CN
- China
- Prior art keywords
- chip
- image data
- intv
- vsync
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Abstract
本申请提供了一种芯片温漂处理方法及装置,应用于显示芯片系统中的码片,所述方法包括:步骤1,统计接收第一帧图像数据的第一输入时长和第一时钟数;步骤2,根据第一输入时长、第一时钟数和约束条件,确定输出控制时序中的水平前肩消隐像素量;步骤3,按照输出控制时序执行图像数据的输入和输出操作,直至检测到当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值;步骤4,更新水平前肩消隐像素量,以补偿时序控制误差;按照更新后的输出控制时序执行后续的帧图像数据的输入和输出操作,并重复步骤2至步骤4的执行过程。如此,可以实现码片输入输出图像数据的平衡,提高了显示芯片系统运行的稳定性。
Description
技术领域
本申请涉及图像数据处理技术领域,尤其涉及一种芯片温漂处理方法及装置。
背景技术
目前,电子设备中的显示芯片系统在使用其内部的晶体振荡器进行视频播放时,可能出现随着播放时间或者播放画面的复杂度增加而导致芯片内部的缓存数据溢出的情况。
发明内容
本申请提出了一种芯片温漂处理方法及装置,能够实现码片输入输出图像数据的平衡,提高了显示芯片系统运行的稳定性。
第一方面,本申请实施例提供的一种芯片温漂处理方法,应用于显示芯片系统中的码片,所述显示芯片系统包括应用处理器AP、所述码片和显示模组,所述AP通信连接所述码片,所述码片通信连接所述显示模组,所述AP所使用的第一晶振与所述码片所使用的第二晶振不同;所述方法包括:
步骤1,在接收来自所述AP的第一帧图像数据的第一时段内,统计所述第一帧图像数据的第一输入时长Ttotal_in和第一时钟数base_vsync_intv;以及,根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,所述输出控制时序包括水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定;
步骤2,按照所述输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与所述base_vsync_intv的差值大于预设差值;
步骤3,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差;
步骤4,按照更新HFP_out后的所述输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤2至步骤4的执行过程。
第二方面,本申请实施例提供了一种码片,应用于显示芯片系统中的码片,所述显示芯片系统包括应用处理器AP、所述码片和显示模组,所述AP通信连接所述码片,所述码片通信连接所述显示模组,所述AP所使用的第一晶振与所述码片所使用的第二晶振不同;所述码片包括:
统计单元,用于步骤1,在接收来自所述AP的第一帧图像数据的第一时段内,统计所述第一帧图像数据的第一输入时长Ttotal_in和第一时钟数base_vsync_intv;以及,根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,所述输出控制时序包括水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定;
第一执行单元,用于步骤2,按照所述输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与所述base_vsync_intv的差值大于预设差值;
更新单元,用于步骤3,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差;
第二执行单元,用于步骤4,按照更新HFP_out后的所述输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤2至步骤4的执行过程。
第三方面,本申请实施例提供了一种电子设备,所述电子设备为移动终端设备或者中控系统设备,包括处理器、存储器以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序/指令,所述计算机程序/指令被处理器执行时实现本申请实施例第一方面共和第二方面中的步骤。
第五方面,本申请实施例提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如本申请实施例第一方面和第二方面中所描述的部分或全部步骤。
可以看出,本示例中,通过让码片在接收到应用处理器的第一帧图像数据的第一时段内,统计第一帧图像数据的第一输入时长和第一时钟数;根据第一输入时长、第一时钟数、以及码片输入和输出有效图像数据的时长相等的约束条件,确定输出控制时序中的水平前肩消隐像素量;按照输出控制时序执行图像数据的输入和输出操作,直至当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值;更新水平前肩消隐像素量,以实现补偿时序控制误差;按照更新后的输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述执行过程,即检测到当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值时,就更新水平前肩消隐像素量。如此,通过时钟数比例调整码片输出控制时序中的水平前肩消隐像素量,从而克服因温漂误差造成的码片输出一行图像数据的时间与输入一行图像数据的时间不同的问题,实现码片输入输出图像数据的平衡,提高了显示芯片系统运行的稳定性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种常规芯片OSC频率偏移与芯片表面温度的关系折线图;
图2是本申请实施例提供的一种显示芯片系统的结构示意图;
图3是本申请实施例提供的一种芯片温漂处理方法的流程示意图;
图4是本申请实施例提供的一种显示芯片系统中码片的结构示意图;
图5是本申请实施例提供的一种码片的功能单元组成构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例中的“和/或”,描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示如下三种情况:单独存在A;同时存在A和B;单独存在B。其中,A、B可以是单数或者复数。
本申请实施例中,符号“/”可以表示前后关联对象是一种“或”的关系。另外,符号“/”也可以表示除号,即执行除法运算。例如,A/B,可以表示A除以B。
本申请实施例中的“至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合,是指一个或多个,多个指的是两个或两个以上。例如,a、b或c中的至少一项(个),可以表示如下七种情况:a,b,c,a和b,a和c,b和c,a、b和c。其中,a、b、c中的每一个可以是元素,也可以是包含一个或多个元素的集合。
本申请实施例中的“等于”可以与大于连用,适用于大于时所采用的技术方案,也可以与小于连用,适用于与小于时所采用的技术方案。当等于与大于连用时,不与小于连用;当等于与小于连用时,不与大于连用。
为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的终端设备、相关概念和背景进行介绍。
请参阅图1,图1是本申请实施例提供的一种常规芯片OSC频率偏移与芯片表面温度的关系折线图。如图1所示,目前,电子设备中的显示芯片在使用其内部的晶体振荡器进行视频播放时,可能出现随着播放时间或者播放画面的复杂度增加而导致出现温漂的情况,即芯片内部出现环境温度变化时会引起晶体管参数的变化,也就是说常规芯片内的晶体振荡器频率偏移比例会随着芯片表面温度的增加而逐步减少,这样会造成静态工作点的不稳定,使电路动态参数不稳定,甚至使电路无法正常工作。如图1可知,随着芯片表面温度的增加,晶体振荡器频率会逐渐编码,在输入一帧数据时间不变的情况下,晶体振荡器频率每偏移千分之一,输入就会比输出多2280/1000行。也就是说在晶体振荡器出现温漂的情况下,芯片内部的码片输入输出图像数据的速度会不平衡,从而导致芯片缓存数据缓冲区内的数据越来越多,最终出现数据溢出的问题。在实际场景中,以手机为例,随着手机中芯片表面温度的逐步增加,例如29度上升到60度的时候,手机芯片输入图像数据的速度不变,而输出图像数据的频率则会变成成98.5%左右,此时需要30多行的缓存缓冲区才能保证不会出现数据缓冲器满载的情况,且芯片的输入输出很可能无法再同步。此外,需要注意的是,不同的常规芯片都会出现相似的情况,且芯片表面温度与晶体振荡器频率偏移关系大致相同。
测试不同常规芯片表面温度与晶体振荡器频率偏移关系大致相同(参阅表1):
表1
为解决上述问题,本申请实施例提供了一种芯片温漂处理方法,该方法通过让码片在接收到应用处理器的第一帧图像数据的第一时段内,统计第一帧图像数据的第一输入时长和第一时钟数;根据第一输入时长、第一时钟数、以及码片输入和输出有效图像数据的时长相等的约束条件,确定输出控制时序中的水平前肩消隐像素量;按照输出控制时序执行图像数据的输入和输出操作,直至检测到当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值;更新水平前肩消隐像素量,以实现补偿时序控制误差;按照更新后的输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述执行过程来重新检测时钟数差值和更新水平前肩消隐像素量。如此,通过时钟数比例调整码片输出控制时序中的水平前肩消隐像素量,从而克服因温漂误差造成的码片输出一行图像数据的时间与输入一行图像数据的时间不同的问题,实现码片输入输出图像数据的平衡,提高了显示芯片运行的稳定性。
基于上述问题,本申请提出一种芯片温漂处理方法,下面进行详细说明。
请参阅图2,图2是本申请实施例提供的一种显示芯片系统的结构示意图,如图2所述,显示芯片系统200包括码片210、应用处理器220和显示模组230,显示模组230例如可以是触控与显示驱动器集成(Touch and Display DriverIntegration,TDDI)芯片,又可称为显示芯片等,应用处理器220与码片210通信连接,显示模组230与码片210通信连接,其中应用处理器220所使用的第一晶振OSC与码片210所使用的第二晶振不同。在显示芯片的日常使用过程中,是由应用处理器220处理和输出图像数据,并将处理后的图像数据通过与码片210之间的通信连接发送给码片210,之后再由码片210处理发送过来的图像数据再通过通信连接输出给显示模组230进行显示。而在实际的显示芯片系统运行过程中,码片210中的第二晶振会受到温漂的影响从而造成时序控制误差,进而导致其输入输出图像数据不平衡。而本申请实施例所提供的芯片温漂处理方法,本质上就是通过更新码片210的输出控制时序中的水平前肩消隐像素量,以实现补偿因所述第二晶振温漂而造成的时序控制误差,从而平衡码片210的图像数据的输入输出。
请参阅图3,图3是本申请实施例提供的一种芯片温漂处理方法的流程示意图,应用于如图2所示的显示芯片系统200中的码片210;如图所示,芯片温漂处理方法包括以下步骤。
步骤301,在接收来自AP的第一帧图像数据的第一时段内,统计第一帧图像数据的第一输入时长Ttotal_in和第一时钟数base_vsync_intv;以及,根据Ttotal_in、base_vsync_intv、以及码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定码片的输出控制时序中的水平前肩消隐像素量HFP_out。
其中,所述输出控制时序包括针对单行图像数据的多个像素的传输时序进行控制的水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定。水平同步像素量HSA_out是行同步信号的长度,水平后肩消隐像素量HBP_out是行同步信号的后肩。
此外,所述输出控制时序还包括针对单帧图像数据的多行图像数据的传输时序进行控制的垂直同步像素行号VSA_out、垂直后肩消隐像素行号VBP_out、垂直有效像素行号Vac_out和垂直前肩消隐像素行号VFP_out,行号指的是行数。同理,输入控制时序也包括针对单行图像数据的多个像素的传输时序、以及针对单帧图像数据的多行图像数据的传输时序进行控制的相关参数,此处不再赘述。
其中,AP是指应用处理器,应用处理器中第一晶振和码片中的第二晶振都是指晶体振荡器(OSC,Oscillator)。OSC是一种能量转换装置,即将直流电能转换为具有指定频率的交流电能,其构成的电路叫振荡电路。芯片OSC接口功能是指需要外接晶振构成振荡器,其目的是给芯片提供时钟信号。其中,本申请实施例所提供的方案所需要解决的问题就是码片中的第二晶振在码片进行长时间和/或高强度工作后,使得码片所属的显示芯片系统表面温度升高,进而导致第二晶振频率偏移,码片输出的图像数据会比码片输入的图像数据慢。这样持续一段时间后,芯片内部缓存缓冲区就会被未及时输出的图像数据填满,从而导致码片中图像控制器模块发出接近满的警告。
其中,接收来自AP的第一帧图像数据的第一时段是指从显示芯片系统的启动阶段到第一帧图像数据从应用处理器端发送到码片这个时间段。第一输入时长Ttotal in也就是应用处理器输入整一帧图像数据的时间。再获取码片输入有效图像数据和输出有效图像数据的时长相等的约束条件来确定出码片的输出控制时序中的HFP_out,这个步骤的原理就在于,既然芯片在持续工作后表面的温度会升高,从而影响到码片的输出图像数据,那么就通过获取最开始工作时,且,输出输入图像数据时长相等的约束条件下的输出控制时序的数据,并将其作为基准,之后再通过这个基准来进行后续的时序控制误差的补偿。
在一个可能的实施例中,所述根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,包括:确定所述码片的输入控制时序所对应的输入总行号Vtotal_in为输入垂直同步像素行号VSA_in、输入垂直后肩像素行号VBP_in、输入垂直有效像素行号Vactive_in以及输入垂直前肩像素行号VFP_in的和;根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定输入单帧图像数据的时间Ttotal_in;确定所述码片的单帧有效图像数据输入时长Tactive_in = Ttotal_in ×Vactive_in ÷Vtotal_in;确定所述码片的单帧有效图像数据输出时长Tactive_out =Htotal_out × Vactive_out ÷CLK_out;根据所述Tactive_in等于Tactive_out、所述Tactive_out的计算公式及Htotal_out= HSA_out + HBP_out +Hactive_out + HFP_out,确定所述HFP_out。
其中,所述Htotal_out为输出单行像素总量,所述Vactive_out为输出垂直有效像素行号,所述CLK_out为所述码片的输出时钟频率。
示例性地,当base_vsync_intv=4991662,码片的输入时钟频率CLK_in=300M时,Ttotal_in=4991662÷300M=16.6ms(ms,即毫秒)。其中,输入垂直有效像素行号Vactive_in=2400,Vtotal_in=2600时,Tactive_in=16.6ms×2400÷2600=15.3ms。
可见,在本示例中,基于码片输入有效图像数据和输出有效图像数据的时长相等的这一约束条件,通过第一帧图像数据的第一输入时长Ttotal_in和第一时钟数base_vsync_intv来计算出码片的输出控制时序中的水平前肩消隐像素量,提高了显示芯片系统中的码片进行数据处理的准确率和处理图像数据的稳定性。
在一个可能的实施例中,所述输入时钟频率CLK_in为所述码片的图像数据预处理VPRE模块的时钟频率,所述VPRE模块的时钟频率由所述第一晶振产生。所述输出时钟频率为所述码片的DPI接口的时钟频率,所述DPI接口的时钟频率由所述第二晶振产生,所述DPI接口为所述码片的LCDC模块与MIPI TX模块之间的接口,所述MIPI TX模块与所述显示模组通信连接。所述时钟频率表征1秒内能够传输的像素数据的数量。
具体地,请参阅图4,图4是本申请实施例提供的一种显示芯片系统中码片的结构示意图。如图4所示,码片400包括移动产业处理器接收接口401(即MIPI RX模块)、图像数据预处理模块402(即VPRE模块)、图像控制器模块403(即VIDC模块)、显示控制器模块404(即LCDC模块)以及移动产业处理器发送接口405(即MIPI TX模块)。其中,移动产业处理器接收接口401连接图像数据预处理模块402,图像数据预处理模块402连接图像控制器模块403,图像控制器模块403连接显示控制器模块404,显示控制器模块404连接移动产业处理器发送接口405。除此之外,移动产业处理器发送接口405还与显示模组通信连接,移动产业处理器接收接口401则与应用处理器通信连接。其中,图像控制器模块403的功能是负责接收来自应用处理器的图像、视频数据,而显示控制器模块404的功能是负责数据的处理和信号的控制,如同显卡在计算机中的作用,主要负责从内存中或者FIFO通道中获取图像/视频数据,以一定的方式叠加、混合,将最终的图像通过DPI接口送给外部液晶显示器(即显示模组)显示,同时产生必须的LCD控制信号。
在一个可能的实施例中,所述根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定输入单帧图像数据的时间Ttotal_in,包括:确定Ttotal_in=base_vsync_intv ÷ CLK_in。
其中,显而易见的是,在获取到第一帧图像数据的第一时钟数base_vsync_intv和输入时钟频率CLK_in后,我们可以通过公式算出码片输入单帧图像数据的时间就是码片需要使用多少次其自身的输入时钟频率来输入完一帧图像数据所对应的时钟数。
可见,在本示例中,通过先前获取的码片刚开始工作的第一帧图像对应的时钟数来计算出码片输入单帧图像数据的时间,从而得到码片输出单帧图像数据的时间,提高了码片进行数据处理的准确性。
在一个可能的实施例中,所述base_vsync_intv表征所述第一帧图像数据的所述第一时段所对应的总像素的数量,所述总像素包括所述第一帧图像数据中的有效图像数据的像素。
步骤302,按照输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与base_vsync_intv的差值大于预设差值。
在一个可能的实施例中,所述预设差值为经验值。
其中,预设差值是指通过技术人员事先进行的大量实践确定出的一个数值。这个预设差值的大小决定了实际检测到的当前处理的帧图像数据的时钟数和先前确定的作为基准的时钟数能偏差多少,预设差值越小,则需要补偿的次数越多,因输入输出图像数据不对等而造成的图像数据的积压的情况越轻。反之,预设差值越大,则需要补偿的次数越少,因输入输出图像数据不对等而造成的图像数据的积压的情况越重。
其中,在实际场景中,为了保证码片中的数据缓冲器FIFO的平衡,预设差值应当尽量小。
步骤303,根据cur_vsync_intv、base_vsync_intv和输出控制时序更新HFP_out,以实现补偿因第二晶振温漂而造成的时序控制误差。
在一个可能的实施例中,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差,包括:根据所述输出控制时序中的所述HSA_out、所述HBP_out、所述Hac_out和更新前的所述HFP_out确定输出单行像素总量Htotal_out;根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out。
示例性地,当第一帧图像数据统计的base_vsync_intv=4991462,当前处理的图像数据对应的时钟数cur_vsync_intv=4981366,可以看出当前处理的帧图像数据的时钟数变少了,那么为了当输出图像数据的时间与最初记录的时间基本相等,就需要确定出一个适配的HFP out让码片的输出控制时序进行更新。
可见,在本示例中,通过实际获取的当前处理的图像数据的时钟数来更新输出控制时序中的HFP out从而使得输出图像数据的时间与最初得到的输出图像数据的时间相同,进而与输入图像数据的时间保持一致,提高了显示芯片系统处理图像数据的稳定性。
在一个可能的实施例中,所述根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out,包括:确定更新后的HFP_out的计算公式为:HFP_out’=Htotal_out ×(cur_vsync_intv ÷base_vsync_intv)﹣HSA_out﹣HBP_out﹣Hac_out。
示例性地,同前一个实施例中的示例,假设第一帧图像数据统计的base_vsync_intv=4991462,当前处理的图像数据对应的时钟数cur_vsync_intv=4981366,且HSA_out固定为2、HBP_out为8、Hac_out固定为1080,以及获取的Htotal_out中的HFP out的数值为992时,首先可以计算得到Htotal_out=2+8+1080+992=2082,其次,再计算HFP_out’=2082×4981366 ÷ 4991462)﹣2﹣8﹣1082≈988。
可见,在本示例中,通过计算当前处理的图像数据时钟数和第一时钟数的比例来换算出新的HFP out的数值,使得下一帧的输出单行像素总量(即输出控制时序)可以进行适配更新,以解决温度升高而带来的输出图像数据时钟数减少的问题,提高了显示芯片系统处理图像数据的稳定性。
步骤304,按照更新HFP_out后的输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤302至步骤304的执行过程。
可见,图3是本申请实施例提供的一种芯片温漂处理方法的流程示意图,本申请实施例提供了一种芯片温漂处理方法,通过让码片在接收到应用处理器的第一帧图像数据的第一时段内,统计第一帧图像数据的第一输入时长和第一时钟数;根据第一输入时长、第一时钟数、以及码片输入和输出有效图像数据的时长相等的约束条件,确定输出控制时序中的水平前肩消隐像素量;按照输出控制时序执行图像数据的输入和输出操作,直至当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值;更新水平前肩消隐像素量,以实现补偿时序控制误差;按照更新后的输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述执行过程,即检测到当前处理的帧图像数据的时钟数与第一时钟数的差值大于预设差值时,就更新水平前肩消隐像素量。如此,通过时钟数比例调整码片输出控制时序中的水平前肩消隐像素量,从而克服因温漂误差造成的码片输出一行图像数据的时间与输入一行图像数据的时间不同的问题,实现码片输入输出图像数据的平衡,提高了显示芯片系统运行的稳定性。
本申请方案方便软件开发人员的升级维护和技术支持工程师、售前售后服务工程师在客户项目和服务过程中更好理解软件流程,并更快捷有效处理项目调试过程中遇到的问题。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,显示芯片为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供一种码片,应用于显示芯片系统中的码片,所述显示芯片系统包括应用处理器AP、所述码片和显示模组,所述AP通信连接所述码片,所述码片通信连接所述显示模组,所述AP所使用的第一晶振与所述码片所使用的第二晶振不同。
本申请实施例可以根据上述方法示例对码片进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图5是本申请实施例提供的一种码片的功能单元组成构图。如图5所示,该码片500可以包括:
统计单元501,用于步骤1,在接收来自所述AP的第一帧图像数据的第一时段内,统计所述第一帧图像数据的第一输入时长Ttotal_in和第一时钟数base_vsync_intv;以及,根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,所述输出控制时序包括水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定。
第一执行单元502,用于步骤2,按照所述输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与所述base_vsync_intv的差值大于预设差值。
更新单元503,用于步骤3,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差。
第二执行单元504,用于步骤4,按照更新HFP_out后的所述输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤2至步骤4的执行过程。
在一个可能的实施例中,在所述根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out方面,所述第一执行单元502具体用于:确定所述码片的输入控制时序所对应的输入总行号Vtotal_in为输入垂直同步像素行号VSA_in、输入垂直后肩像素行号VBP_in、输入垂直有效像素行号Vactive_in以及输入垂直前肩像素行号VFP_in的和;根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定输入单帧图像数据的时间Ttotal_in;确定所述码片的单帧有效图像数据输入时长Tactive_in = Ttotal_in ×Vactive_in ÷Vtotal_in;确定所述码片的单帧有效图像数据输出时长Tactive_out = Htotal_out × Vactive_out ÷CLK_out,所述Htotal_out为输出单行像素总量,所述Vactive_out为输出垂直有效像素行号,所述CLK_out为所述码片的输出时钟频率;根据所述Tactive_in等于Tactive_out、所述Tactive_out的计算公式及Htotal_out = HSA_out +HBP_out + Hactive_out +HFP_out,确定所述HFP_out。
在一个可能的实施例中,所述输入时钟频率CLK_in为所述码片的图像数据预处理VPRE模块的时钟频率;所述输出时钟频率为所述码片的DPI接口的时钟频率,所述DPI接口为所述码片的LCDC模块与MIPI TX模块之间的接口,所述MIPI TX模块与所述显示模组通信连接;所述时钟频率表征1秒内能够传输的像素数据的数量。
在一个可能的实施例中,在所述根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定输入单帧图像数据的时间Ttotal_in方面,所述第一执行单元502具体用于:确定所述Ttotal_in=base_vsync_intv÷ CLK_in。
在一个可能的实施例中,所述base_vsync_intv表征所述第一帧图像数据的所述第一时段所对应的总像素的数量,所述总像素包括所述第一帧图像数据中的有效图像数据的像素。
在一个可能的实施例中,在所述根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差方面,所述更新单元503具体用于:根据所述输出控制时序中的所述HSA_out、所述HBP_out、所述Hac_out和更新前的所述HFP_out确定输出单行像素总量Htotal_out;根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out。
在一个可能的实施例中,在所述根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out方面,所述更新单元503具体用于:确定更新后的HFP_out的计算公式为:HFP_out’=Htotal_out ×(cur_vsync_intv ÷ base_vsync_intv)﹣HSA_out﹣HBP_out ﹣Hac_out。
在一个可能的实施例中,所述预设差值为经验值。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和系统,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的;例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,可轻易想到变化或替换,均可作各种更动与修改,包含上述不同功能、实施步骤的组合,包含软件和硬件的实施方式,均在本发明的保护范围。
Claims (10)
1.一种芯片温漂处理方法,其特征在于,应用于显示芯片系统中的码片,所述显示芯片系统包括应用处理器AP、所述码片和显示模组,所述AP通信连接所述码片,所述码片通信连接所述显示模组,所述AP所使用的第一晶振与所述码片所使用的第二晶振不同;所述方法包括:
步骤1,在接收来自所述AP的第一帧图像数据的第一时段内,统计输入单帧图像数据的时间Ttotal_in和第一时钟数base_vsync_intv;以及,根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,所述输出控制时序包括水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定;
步骤2,按照所述输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与所述base_vsync_intv的差值大于预设差值;
步骤3,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差;
步骤4,按照更新HFP_out后的所述输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤2至步骤4的执行过程。
2.根据权利要求1所述的方法,其特征在于,所述根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,包括:
确定所述码片的输入控制时序所对应的输入总行号Vtotal_in为输入垂直同步像素行号VSA_in、输入垂直后肩像素行号VBP_in、输入垂直有效像素行号Vactive_in以及输入垂直前肩像素行号VFP_in的和;
根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定所述Ttotal_in;
确定所述码片的单帧有效图像数据输入时长Tactive_in = Ttotal_in ×Vactive_in÷ Vtotal_in;
确定所述码片的单帧有效图像数据输出时长Tactive_out = Htotal_out ×Vactive_out ÷ CLK_out,所述Htotal_out为输出单行像素总量,所述Vactive_out为输出垂直有效像素行号,所述CLK_out为所述码片的输出时钟频率;
根据所述Tactive_in等于Tactive_out、所述Tactive_out的计算公式及Htotal_out =HSA_out + HBP_out + Hactive_out + HFP_out,确定所述HFP_out。
3.根据权利要求2所述的方法,其特征在于,所述输入时钟频率CLK_in为所述码片的图像数据预处理VPRE模块的时钟频率,所述VPRE模块的时钟频率由所述第一晶振产生;
所述输出时钟频率为所述码片的DPI接口的时钟频率,所述DPI接口的时钟频率由所述第二晶振产生,所述DPI接口为所述码片的LCDC模块与MIPI TX模块之间的接口,所述MIPITX模块与所述显示模组通信连接;
所述时钟频率表征1秒内能够传输的像素数据的数量。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述base_vsync_intv和所述码片的输入时钟频率CLK_in确定输入单帧图像数据的时间Ttotal_in,包括:
确定Ttotal_in=base_vsync_intv ÷ CLK_in。
5.根据权利要求4所述的方法,其特征在于,所述base_vsync_intv表征所述第一帧图像数据的所述第一时段所对应的总像素的数量,所述总像素包括所述第一帧图像数据中的有效图像数据的像素。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差,包括:
根据所述输出控制时序中的所述HSA_out、所述HBP_out、所述Hac_out和更新前的所述HFP_out确定输出单行像素总量Htotal_out;
根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out。
7.根据权利要求6所述的方法,其特征在于,所述根据所述Htotal_out、所述cur_vsync_intv、所述base_vsync_intv、所述HSA_out、所述HBP_out、所述Hac_out确定更新后的HFP_out,包括:
确定更新后的HFP_out的计算公式为:
HFP_out’=Htotal_out × (cur_vsync_intv ÷ base_vsync_intv) ﹣ HSA_out﹣HBP_out ﹣ Hac_out。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述预设差值为经验值。
9.一种码片,其特征在于,应用于显示芯片系统中的码片,所述显示芯片系统包括应用处理器AP、所述码片和显示模组,所述AP通信连接所述码片,所述码片通信连接所述显示模组,所述AP所使用的第一晶振与所述码片所使用的第二晶振不同;所述码片包括:
统计单元,用于步骤1,在接收来自所述AP的第一帧图像数据的第一时段内,统计输入单帧图像数据的时间Ttotal_in和第一时钟数base_vsync_intv;以及,根据所述Ttotal_in、所述base_vsync_intv、以及所述码片输入有效图像数据和输出有效图像数据的时长相等的约束条件,确定所述码片的输出控制时序中的水平前肩消隐像素量HFP_out,所述输出控制时序包括水平同步像素量HSA_out、水平后肩消隐像素量HBP_out、水平有效像素量Hac_out和所述HFP_out,所述HSA_out、所述HBP_out为默认值,所述Hac_out根据所述码片的输出分辨率确定;
第一执行单元,用于步骤2,按照所述输出控制时序执行至少一帧图像数据的输入和输出操作,直至检测到如下状态:当前处理的帧图像数据的时钟数cur_vsync_intv与所述base_vsync_intv的差值大于预设差值;
更新单元,用于步骤3,根据所述cur_vsync_intv、所述base_vsync_intv和所述输出控制时序更新所述HFP_out,以实现补偿因所述第二晶振温漂而造成的时序控制误差;
第二执行单元,用于步骤4,按照更新HFP_out后的所述输出控制时序执行接下来的帧图像数据的输入和输出操作,并重复上述步骤2至步骤4的执行过程。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1-8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310133483.1A CN115831032B (zh) | 2023-02-20 | 2023-02-20 | 芯片温漂处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310133483.1A CN115831032B (zh) | 2023-02-20 | 2023-02-20 | 芯片温漂处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115831032A CN115831032A (zh) | 2023-03-21 |
CN115831032B true CN115831032B (zh) | 2023-04-25 |
Family
ID=85521840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310133483.1A Active CN115831032B (zh) | 2023-02-20 | 2023-02-20 | 芯片温漂处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115831032B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132609B (zh) * | 2023-03-28 | 2023-08-04 | 深圳曦华科技有限公司 | 基于带隙基准bg温度系数的温漂纠偏方法及装置 |
CN116055779B (zh) * | 2023-03-29 | 2024-03-19 | 深圳曦华科技有限公司 | 视频模式码片数据流传输时序控制方法及装置 |
CN116030748B (zh) * | 2023-03-30 | 2023-08-08 | 深圳曦华科技有限公司 | 一种码片时钟频率动态调整方法及装置 |
CN116052578B (zh) * | 2023-03-31 | 2023-08-04 | 深圳曦华科技有限公司 | 一种显示芯片系统中码片输入输出同步控制方法及装置 |
CN116149591B (zh) * | 2023-04-04 | 2023-08-18 | 深圳曦华科技有限公司 | 一种命令模式码片数据流传输时序控制方法及装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5929924A (en) * | 1997-03-10 | 1999-07-27 | Neomagic Corp. | Portable PC simultaneously displaying on a flat-panel display and on an external NTSC/PAL TV using line buffer with variable horizontal-line rate during vertical blanking period |
CN105989789B (zh) * | 2015-02-17 | 2020-03-03 | 奇景光电股份有限公司 | 自时序控制器传送数据的方法以及时序控制器与显示系统 |
CN106161306B (zh) * | 2016-07-05 | 2019-02-01 | 福州瑞芯微电子股份有限公司 | 一种快速频偏调整方法和装置 |
US10235927B2 (en) * | 2016-08-26 | 2019-03-19 | Apple Inc. | On-chip clock calibration systems and methods for electronic device displays |
KR102366556B1 (ko) * | 2018-10-11 | 2022-02-22 | 매그나칩 반도체 유한회사 | 동작 주파수를 조절할 수 있는 디스플레이 구동 ic 및 그 동작 주파수 조절 방법 |
US10895933B2 (en) * | 2019-03-14 | 2021-01-19 | Novatek Microelectronics Corp. | Timing control circuit and operation method thereof |
KR20220100779A (ko) * | 2021-01-08 | 2022-07-18 | 삼성디스플레이 주식회사 | 표시 구동 회로, 이를 포함하는 표시 장치, 및 표시 장치의 구동 방법 |
CN114302022A (zh) * | 2021-12-31 | 2022-04-08 | 上海宇思微电子有限公司 | 一种动态调整视频时序的方法 |
CN114785342A (zh) * | 2022-04-25 | 2022-07-22 | 厦门码灵半导体技术有限公司 | 用于系统级芯片soc的低频高精度振荡器及系统级芯片soc |
-
2023
- 2023-02-20 CN CN202310133483.1A patent/CN115831032B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115831032A (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115831032B (zh) | 芯片温漂处理方法及装置 | |
CN109830204B (zh) | 一种时序控制器、显示驱动方法、显示装置 | |
CN101491090B (zh) | 用于同步显示流的方法和系统 | |
US10380934B2 (en) | Display driving device for reducing brightness deviation of display panel | |
CN115834793B (zh) | 视频模式下的图像数据传输控制方法 | |
US10613811B2 (en) | Driving multiple display devices with a single display port | |
US8471859B2 (en) | Device and method for controlling frame input and output | |
CN102272825A (zh) | 多个视频图像的无缝显示迁移 | |
KR20170016255A (ko) | 동작 중에 클락을 변경할 수 있는 데이터 송신 장치 및 이를 포함하는 데이터 인터페이스 시스템 | |
KR100744135B1 (ko) | 오실레이터 클럭 신호를 이용하여 시스템 클럭 신호를생성하는 디스플레이용 구동 집적회로 및 디스플레이용구동 집적회로의 시스템 클럭 신호 생성 방법 | |
US9087473B1 (en) | System, method, and computer program product for changing a display refresh rate in an active period | |
CN110174966A (zh) | 控制方法、显示模组和电子设备 | |
CN110992862B (zh) | 对电子设备执行显示控制的方法、主处理器和显示面板 | |
US20120137302A1 (en) | Priority information generating unit and information processing apparatus | |
CN116055779B (zh) | 视频模式码片数据流传输时序控制方法及装置 | |
CN113823230B (zh) | 背光控制方法、装置、存储介质及显示设备 | |
CN115151886A (zh) | 基于帧更新延迟dsi时钟改变以提供更平滑的用户界面体验 | |
CN113728622B (zh) | 用于无线传输图像的方法及装置、存储介质及电子设备 | |
CN114173054A (zh) | 多帧频拼接视频源显示控制方法及其系统和led显示系统 | |
CN116132609B (zh) | 基于带隙基准bg温度系数的温漂纠偏方法及装置 | |
CN116052578B (zh) | 一种显示芯片系统中码片输入输出同步控制方法及装置 | |
CN116030748B (zh) | 一种码片时钟频率动态调整方法及装置 | |
CN111629119B (zh) | 一种mipi数据处理方法、装置、存储介质及显示终端 | |
JP2016061837A (ja) | 表示システム | |
KR20070070760A (ko) | 데이터 양에 따라 전송 속도를 세팅하는 이동통신 단말기및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |