一种显示设备的刷新控制方法及装置与流程

文档序号:14404689阅读:373来源:国知局
一种显示设备的刷新控制方法及装置与流程

本发明涉及计算机技术领域,特别涉及一种显示设备的刷新控制方法及装置。



背景技术:

计算机系统一般都包含有某种形式的显示设备。以移动设备为例,智能手机大部分集成了LCD(Liquid Crystal Display,液晶显示屏)或OLED(Organic Light Emitting Diode,有机发光二极管)显示系统。这类显示系统主要包含三部分:应用处理器、存储设备(包含帧缓存区)、以及显示设备(包含显示控制器和显示面板)。其中,应用处理器负责绘制并生成图像帧,并将生成的图像帧存放到存储设备中的帧缓存区,帧缓存区用于存储显示屏各像素点的数据,显示控制器主要负责从帧缓存区中读取像素点的数据,并依次写入到显示面板上各像素点对应的逻辑电路中。

显示系统在进行图像显示的过程中,应用处理器会不断地生成新的图像帧,并将该图像帧送入帧缓存区中,这就需要显示控制器从帧缓存区中读取图像帧并将图像帧输出到显示器,这一过程被称为图像帧的刷新。

以LCD显示设备为例,主要包括:应用处理器、物理内存中的帧缓存区,LCD控制器以及LCD面板。帧缓存区存储了屏幕上各像素点的数据,内存控制器作为应用处理器和LCD控制器之间交互的媒介。应用处理器里运行的应用或服务负责绘制图像帧,并将完成绘制的图像帧存放到帧缓存区。当帧刷新操作发生时,LCD控制器里面的DMA(Direct Memory Access,直接内存存取)控制器会依序产生访问帧缓存区的请求发送给内存控制器,内存控制器读取内存系统里帧缓存区中各像素点的数据并返回给DMA控制器。DMA控制器接收到内存控制器返回的数据后,送到LCD面板上进行显示。

图像帧的刷新操作由LCD显示设备的刷新控制器负责产生。刷新控制器依据时序逻辑定期地产生刷新信号。刷新控制器产生刷新信号的周期由操作系统或用户来指定。显示设备执行刷新的主要目的有两个:一是保持屏幕上的像素点不失真,二是及时显示修改过的图像帧。由于像素点的失真时间段较长,因而一个较低的刷新周期就能保证像素点不失真。对于不同的应用程序来说,图像的更新频率不一样,屏幕刷新的频率要求也不一样,如文本类应用的更新频率在10Hz左右,而视频类应用的更新频率一般在30Hz以上。为了保证所有应用程序的图像都能及时显示在屏幕上,传统的LCD控制器采用较高的刷新频率,如60Hz。

采用以上方案,为了保证及时的将图像显示到屏幕,设置了过高的刷新频率,导致出现过多的不必要的刷新操作,以及相应的帧内存缓存区的访问操作,浪费系统资源并且内存消耗较大。



技术实现要素:

本发明实施例提供了一种显示设备的刷新控制方法及装置,用于减少不必要的刷新操作,降低系统资源消耗以及内存消耗。

本发明实施例一方面提供了一种显示设备的刷新控制方法,所述显示设备包括显示控制器和显示面板,包括:

显示控制器周期性产生第一刷新信号,将帧缓存区存储的用于显示的图像帧输出到显示面板;产生所述第一刷新信号的周期,短于所述显示面板的像素点因漏电出现失真的时长;

所述显示控制器确定所述帧缓存区存储的用于显示的图像帧发生改变,则产生第二刷新信号,将所述帧缓存区内存储的用于显示的图像帧输出到所述显示面板。

结合一方面的实现方式,在第一种可能的实现方式中,所述显示控制器确定所述帧缓存区存储的用于显示的图像帧发生改变,则产生第二刷新信号,包括:所述显示控制器检测到所述帧缓存区中的图像帧发生切换,则产生第二刷新信号;

所述将所述帧缓存区内存储的用于显示的图像帧输出到所述显示面板包括:将所述帧缓存区内存储的用于显示的整个图像帧输出到所述显示面板。

结合一方面的实现方式,在第二种可能的实现方式中,所述显示控制器确定所述帧缓存区存储的用于显示的图像帧发生改变,则产生第二刷新信号包括:

所述显示控制器检测到所述帧缓存区中的图像帧发生切换时,获取图像帧状态参数,并根据所述图像帧状态参数产生所述第二刷新信号;所述图像帧状态参数标识所述用于显示的图像帧发生变化的图像数据对应的地址;

所述将所述帧缓存区内存储的用于显示的图像帧输出到所述显示面板包括:

根据所述第二刷新信号,将所述帧缓存区内存储的用于显示的图像帧中地址对应的图像数据输出到所述显示面板。

结合一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述图像帧状态参数标识所述用于显示的图像帧发生变化的图像数据对应的地址,包括:

所述图像帧状态参数用于标识所述用于显示的图像帧发生变化的图像数据对应的行、或列、或者像素点的地址;

所述根据所述第二刷新信号,将所述帧缓存区内存储的用于显示的图像帧中所述地址对应的图像数据输出到显示面板包括:

根据所述第二刷新信号,将所述帧缓存区内存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据输出到所述显示面板。

结合一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述将所述帧缓存区内存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据输出到所述显示面板包括:

向内存控制器发送数据读取请求,用于请求读取所述用于显示的图像帧中行、或列、或者像素点的地址对应的图像数据;

接收所述内存控制器返回的图像数据,并将接收到的图像数据输出到所述显示面板。

本发明实施例二方面提供了一种显示设备的刷新控制装置,其特征在于,包括:

刷新控制器,用于周期性产生第一刷新信号,并发送给直接内存存取控制器;产生所述第一刷新信号的周期,短于显示面板的像素点因漏电出现失真的时长;以及,用于确定帧缓存区存储的用于显示的图像帧发生改变时,则产生第二刷新信号,并发送给所述直接内存存取控制器;

直接内存存取控制器,用于在接收到所述刷新控制器发送的所述第一刷新信号,将帧缓存区存储的用于显示的图像帧输出到显示面板;以及用于在接收到所述刷新控制器发送的所述第二刷新信号,将所述帧缓存区存储的用于显示的图像帧输出到所述显示面板。

结合二方面的实现方式,在第二种可能的实现方式中,所述刷新控制器,用于检测到所述用于显示的图像帧发生切换时,产生第二刷新信号,并发送给所述直接内存存取控制器;

所述直接内存存取控制器,用于接收到所述第二刷新信号后,将所述帧缓存区内存储的用于显示的整个图像帧输出到所述显示面板。

结合二方面的实现方式,在第二种可能的实现方式中,所述刷新控制器,用于检测到所述用于显示的图像帧发生切换时,获取图像帧状态参数,并根据所述图像帧状态参数产生第二刷新信号,并将所述第二刷新信号发送给所述直接内存存取控制器;所述图像帧状态参数标识所述用于显示的图像帧发生变化的图像数据对应的地址;

所述直接内存存取控制器,用于接收到所述第二刷新信号后,根据所述第二刷新信号,将所述帧缓存区内存储的用于显示的图像帧中发生变化的地址对应的图像数据输出到所述显示面板。

结合二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述刷新控制器,用于获取所述图像帧状态参数,其中,所述图像帧状态参数用于标识所述用于显示的图像帧中发生变化的图像数据对应的行、列或者像素点的地址;

所述直接内存存取控制器,用于在接收到第二刷新信号后,根据所述第二刷新信号,将所述帧缓存区存储的用于显示的图像帧中所述行、或列、或者像素点的地址对应的图像数据输出到所述显示面板。

结合二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述直接内存存取控制器,用于依据第二刷新信号包含的所述图像帧状态参数确定所述帧缓存区存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址,向所述内存控制器发送数据读取请求,所述数据读取请求用于读取所述用于显示的图像帧中发生变化的行、列或者像素点的地址对应的图像数据;接收所述内存控制器返回的图像数据,并将接收到的图像数据输出到所述显示面板。

从以上技术方案可以看出,本发明实施例具有以下优点:通过周期性产生第一刷新信号可以防止显示面板的像素点因漏电出现失真,上述第二刷新信号的产生频率是为了防止显示器面板的像素点因漏电出现失真设定的,因此会远小于用于保证图像帧及时显示所需要的频率;另外,在帧缓存区存储的图像帧发生改变的时候,可以确定图像帧需要被刷新到显示面板。通过监控图像帧的变化这一事件来触发图像帧的刷新操作可以保证图像帧被及时显示,而不再需要使用过高的刷新频率来保证图像帧被及时显示;因此本发明实施例可以减少不必要的刷新操作,从而降低系统资源消耗以及内存消耗。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例应用环境的系统结构示意图;

图2为本发明实施例方法流程示意图;

图3为本发明实施例系统结构示意图;

图4为本发明实施例系统结构示意图;

图5为本发明实施例系统结构示意图;

图6为本发明实施例方法流程示意图;

图7为本发明实施例方法流程示意图;

图8为本发明实施例方法流程示意图;

图9为本发明实施例行驱动逻辑的刷新逻辑结构示意图;

图10为本发明实施例装置结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

如图1所示,为本发明实施例一个应用环境的举例,图1所示为显示系统的结构框图,主要包括:应用处理器(Application processors)、内存子系统(memory subsystem)和液晶显示子系统(LCD display subsystem)。

其中,应用处理器负责将图像帧的数据写入到内存芯片中的帧缓存区中。在图1中,内存芯片是DRAM(Dynamic Random Access Memory,动态随机存取存储器)。

内存子系统包括两个部分:内存控制器(memory controller)、内存芯片。其中,帧缓存区是内存芯片的一部分区域,只用于存储图像帧数据。显示设备一般可以包含有多个帧缓存区,一个帧缓存区用于存放当前需要显示的图像帧的数据,其他的帧缓存区用于在后台准备图像帧数据。

液晶显示子系统主要包括两个部分:显示控制器和显示面板。其中,显示面板包含:显示逻辑(Display logic)和面板(display panel)。

本发明实施例提供了一种显示设备的刷新控制方法,如图2所示,包括:

201:显示控制器周期性产生第一刷新信号,将帧缓存区存储的用于显示的图像帧输出到显示面板;产生上述第一刷新信号的周期,短于上述显示面板的像素点因漏电出现失真的时长;

由于本发明实施例采用了事件触发的方式进行刷新,因此在某些场景下会存在刷新频率极低的情况,如果刷新频率过低则可能出现显示器的显示面板的像素点因漏电出现失真,这时会出现图像失真的情况;为了避免这种情况的发生,本步骤用于保证最低刷新频率,防止显示器面板的像素点因漏电出现失真。上述显示面板的像素点因漏电出现失真的时长,指的是显示面板的像素点从充电结束到漏电出现失真的时间段的长度。

另外,在本发明实施例中,保证最低刷新频率的方案除了以上周期性产生第一刷新信号的方案以外,还可以采用例如:监控刷新等待时长(即没有向显示面板输出图像帧的等待时长),如果刷新等待时长与显示面板漏电出现失真的时长的差小于设定阈值,则产生第一刷新信号,将帧缓存区存储的用于显示的图像帧输出到显示面板。这种方案不需要周期性的刷新,可以进一步的降低不必要的刷新操作。

以上步骤201与后续步骤202是同步执行的,并无先后次序之分。

202:上述显示控制器确定上述帧缓存区存储的用于显示的图像帧发生改变时,则产生第二刷新信号,将上述帧缓存区内存储的用于显示的图像帧输出到上述显示面板。

在本发明实施例中,图像帧存储在帧缓存区,帧缓存区可能有多个,在本发明实施例中需要监控的是用于存放需要显示到显示面板的图像帧的帧缓存区。上述帧缓存区存储的用于显示的图像帧是否发生改变的确定方式,可以由内存控制器执行监控,并将监控到的信息传递给显示控制器。内存控制器监控用于显示的图像帧是否发生改变通常可以是监控帧缓存区的数据是否发生了改变,监控的方式依具体的内存子系统结构的不同而不同,只要能及时确定图像帧改变就可以,本发明实施例对此不做唯一性限定。

本发明实施例,通过周期性产生第一刷新信号可以防止显示面板的像素点因漏电出现失真,上述第二刷新信号的产生频率是为了防止显示器面板的像素点因漏电出现失真设定的,因此会远小于用于保证图像帧及时显示所需要的频率;另外,在帧缓存区存储的图像帧发生改变的时候,可以确定图像帧需要被刷新到显示面板。通过监控图像帧的变化这一事件来触发图像帧的刷新操作可以保证图像帧被及时显示,而不再需要使用过高的刷新频率来保证图像帧被及时显示;因此本发明实施例可以减少不必要的刷新操作,从而降低系统资源消耗以及内存消耗。

在本发明实施例中,事件触发的方式,可以是刷新整个用于显示的图像帧(即整体刷新),也可以是刷新用于显示的图像帧中发生改变的部分(即部分刷新);另外,本发明实施例还提供了具体如何确定图像帧发生改变的实现方案,其中整体刷新的方式可以如下:

上述显示控制器确定上述帧缓存区存储的用于显示的图像帧发生改变,则产生第二刷新信号,包括:上述显示控制器检测到上述帧缓存区中的图像帧发生切换,则产生第二刷新信号;

上述将上述帧缓存区内存储的用于显示的图像帧输出到上述显示面板包括:将上述帧缓存区内存储的用于显示的整个图像帧输出到上述显示面板。

在本发明实施例中,还提供了如何确定帧缓存区存储的用于显示的图像帧是否发生改变的可选实现方案,并据此进行部分刷新的方案,具体如下:上述显示控制器确定上述帧缓存区存储的用于显示的图像帧发生改变,则产生第二刷新信号包括:

上述显示控制器检测上述帧缓存区中的图像帧发生切换时,获取图像帧状态参数,并根据上述图像帧状态参数产生上述第二刷新信号;上述图像帧状态参数标识上述用于显示的图像帧发生变化的图像数据对应的地址;

上述将上述帧缓存区内存储的用于显示的图像帧输出到上述显示面板包括:根据上述第二刷新信号,将上述帧缓存区内存储的用于显示的图像帧中发生变化的地址对应的图像数据输出到上述显示面板。

在本实施例中,图像帧状态参数可以存储在帧缓存区状态模块,帧缓存区状态模块存储的图像帧状态参数由内存控制器监控在确定上述帧缓存区存储的用于显示的图像帧发生改变后存入;上述帧缓存区状态模块可以是内存子系统内的一个新增模块,显示控制器从上述帧缓存区状态模块内读取上述图像帧状态参数。

由于本发明实施例采用了事件触发的方式进行刷新,那么图像帧的更新这一事件可以进行粒度的划分,从而实现仅对图像帧中那些发生改变的像素或者行或者列的图像帧数据进行刷新,而不必对所有的图像帧数据进行刷新,从而进一步的减少刷新数据量,减少对内存的占用,具体如下:上述图像帧状态参数标识上述用于显示的图像帧发生变化的地址,包括:上述图像帧状态参数用于标识上述用于显示的图像帧发生变化的行、或列、或者像素点的地址;

上述根据上述第二刷新信号,将上述帧缓存区内存储的用于显示的图像帧输出到显示面板包括:将上述帧缓存区内存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据输出到上述显示面板。

在本发明实施例可以仅对帧缓存区内存储的用于显示的图像帧中发生变化的部分进行刷新,那么本发明实施例中需要获得帧缓存区内存储的用于显示的图像帧中发生变化的部分的数据,本实施例还提供了如何获得这些数据的具体实现方式,如下:上述将上述帧缓存区内存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据输出到上述显示面板包括:依据上述图像帧状态参数确定上述帧缓存区存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址;

向上述内存控制器发送数据读取请求,用于请求读取上述用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据;

接收上述内存控制器返回的图像数据,并将接收到的图像数据输出到上述显示面板。

以下实施例将结合显示系统可能的结构示意图,对本发明实施例的具体实现流程进行举例说明。

如图3所示的显示系统的结构框图,主要包括:应用处理器(Application processors)、内存子系统(memory subsystem)和液晶显示子系统(LCD display subsystem)。

其中,应用处理器负责将图像帧数据写入到内存芯片中的帧缓存区中。在图3中,内存芯片是DRAM(Dynamic Random Access Memory,动态随机存取存储器)。

内存子系统包括三个部分:内存控制器(memory controller)、内存芯片以及帧缓存区状态(Frame Buffer Status)模块。其中,帧缓存区是内存芯片的一部分区域,只用于存储图像帧数据。显示设备一般可以包含有多个帧缓存区,一个帧缓存区用于存放当前需要显示的图像帧数据,其他的帧缓存区用于在后台准备图像帧数据。帧缓存区状态模块是本发明实施例新增的模块,主要用于存储与帧缓存区相关的状态信息。

液晶显示子系统主要包括两个部分:显示控制器(虚线框内部分)和显示面板。其中,显示面板包含:显示逻辑(Display logic)和面板(display panel)。显示控制器可以细分为三个部分:刷新控制器(Refresh Controller)、DMA控制器(DMA Controller)以及帧缓存区寄存器(Frame Buffer Regs)。

本发明实施例中,刷新控制器可以由时序驱动的逻辑电路来实现,定期地触发帧刷新信号(第一刷新信号);另外,还可以由事件驱动帧刷新信号(第二刷新信号)。其中,时序驱动的刷新逻辑,由时序逻辑按照指定的刷新频率定期产生刷新信号。对于采用电容来存储像素点数据的显示设备如LCD来说,电容漏电会导致像素点失真。在发明实施例中,时序驱动的刷新逻辑可以采用较低的频率进行刷新,定期地对像素点的电容充电,只要能够保证像素点不失真就可以。事件驱动的刷新逻辑可以根据与帧缓存区相关的信息来产生帧刷新信号,主要目的在于及时地显示发生变化的图像帧。

DMA控制器的功能是根据帧缓存区的地址,产生一系列的DMA访问请求,读取帧缓存区中的图像帧数据。帧缓存区寄存器主要是在存在多个帧缓存区的显示设备中,记录当前用于显示的帧缓存区的地址信息,这与刷新控制器类似。在存在多个帧缓存区的显示设备中,当有新的图像帧准备完成时,操作系统会产生帧切换操作,将帧缓存区寄存器的值设置为包含有最新的图像帧数据的帧缓存区的地址。也就是说,帧缓存器寄存器的值发生修改,代表着帧缓存区发生了切换,也意味着有新的图像帧绘制完成,需要及时地显示在屏幕上。本发明实施例可以增加额外的控制逻辑,将帧缓存区寄存器的值发生修改的信息传递给刷新控制器。

此外,内存控制器搜集的帧缓存区信息需要传递给显示控制器,用于控制需要刷新的像素点。因而,本发明实施例在内存控制器和显示控制器间会建立一个交互通道。本发明实施例的显示系统的结构的框图中增加的帧缓存区状态模块以及帧缓存区寄存器的监控逻辑既可以同时存在,也可以单独存在。

另外,如图4中所示的帧缓存区状态模块、刷新控制器、DMA控制器及帧缓存区寄存器可以同时存在于内存子系统中(图3中分别存在于内存子系统和液晶显示子系统中),如另外,如5所示,将内存控制器和显示控制器都集成在同一芯片中,将显示系统的刷新控制器及DMA控制器等部件集成到内存控制器也是可以实现的。

以下对本发明实施例的具体实现流程进行详细说明,具体如下,图6所示:

S1:显示控制器执行时序驱动逻辑,按照较低的刷新周期定期地触发帧刷新操作(第一刷新信号);

在本步骤中,较低的刷新频率是相对于为保证及时更新所设置的很高的刷新频率而言的。在电容屏的显示器中,这里的较低的刷新频率只要能保证显示器的电容不因为漏电发生像素点失真就可以。因此这里的刷新频率和电容漏电速度以及像素失真所对应的漏电量相关,本领域技术人员可以据此计算出对应各种不同显示器的刷新频率,本发明实施例对于刷新频率的具体取值不予限定。另外,本领域技术人员可知的是,在本发实施例中,周期性刷新的频率与防止显示器的电容因为漏电发生像素点失真所需要的最低频率越接近,则越可以减少不必要的刷新。

S2:显示控制器以及内存控制器监控帧缓存区的状态信息;

显示控制器监控的帧缓存区的状态信息,主要是指帧缓存区的切换操作(即帧缓存区的图像帧是否发生了改变),帧缓存区的切换操作可以通过帧缓存区寄存器中值的变化来判断。

内存控制器监控的帧缓存区状态信息,主要是指图像帧数据的修改状态。其中,帧缓存区状态模块用于存储图像帧数据的是否修改状态信息,该模块一般是由SRAM(Static Random Access Memory,静态随机存储器)组成。图像帧数据的修改状态可以对应多种粒度,例如:整个帧缓存区、行以及像素点等。粒度越细,存储的开销越大。

图像帧数据的修改状态的监控功能,可以由内存控制器通过监控内存控制器的写队列来实现。内存控制器的写队列会包含所有对内存数据的写请求。所有对帧数据的修改都是通过写请求来实现的。在本发明实施例中,具体获取帧数据修改状态的流程图如下图7所示:

S21:在系统启动时,内存控制器获取帧缓存区中的信息。内存控制器获取帧缓存区中的信息可以有:信息对应的内存区域、单个帧缓存区大小、每个帧的行数和列数,以及每个像素点占据的字节数等。

S22:当检测到内存控制器接收到新的写请求,并加入到写请求队列后,启动下述步骤。

S23:根据S21步骤中内存控制器获取的帧缓存区信息,判断该请求要修改的地址是否属于帧缓存区。如果是,执行步骤S24;否则,跳转到步骤S26。

S24:根据帧缓存区状态的监控粒度,抽取出对应监控粒度的地址信息,如整个帧缓存区、帧数据行或是每个像素点。

S25:在帧缓存区状态模块中将对应缓存区、行或是像素点的状态更新为“被修改”。一般而言,该状态可以通过位图来标识,“0”表示数据未被修改,“1”表示“被修改”。帧缓存区状态模块可以将被修改的地址以及对应的值发送给帧缓存寄存器,使帧缓存寄存器中的值修改。

S26:处理完成。

S3:显示控制器检测帧缓存区状态信息的改变,判断是否需要触发帧刷新操作;

判断是否需要触发帧刷新操作的具体流程,请参阅图8所示,如下:

S31:系统启动,显示控制器记录当前帧缓存寄存器中的值。

S32:当显示控制器检测到帧缓存区寄存器的值被修改时,执行下述步骤:

S33:读取帧缓存区寄存器的值。

S34:判断记录的帧缓存区寄存器的值,与新写入寄存器的值是否相等。如果是,跳转到步骤S36;否则,执行步骤S35。

S35:通知刷新控制器,触发事件驱动的帧刷新逻辑,产生帧刷新信号(第二刷新信号)。此外,更新并记录当前帧缓存区寄存器的值,用于下次比较。

S36:处理完成。

S4:帧刷新控制器读取帧缓存区的状态信息,分析需要刷新的帧缓存区中的区域;

本步骤中的状态信息,主要是指内存控制器中帧缓存区状态模块记录的信息,也就是标识数据是否被修改的状态。如果帧数据发生修改,该数据需要被读取并显示到显示面板上去;否则,不需要读取该数据。刷新帧缓存区状态模块记录的信息可以是整个帧缓存区、帧缓存的行或是单个的像素点为监控粒度的,因此,在不同的监控粒度下,需要刷新的帧缓存区的区域也会发生差异。

S5:DMA控制器启动DMA操作,向内存控制器发送读取帧缓存区中数据的DMA请求,获取帧缓存区内发生改变的图像帧的数据;

在本步骤中,DMA控制器根据S4步骤中获取的被修改的数据信息,产生DMA请求来读取这些数据。

S6:显示面板的显示逻辑,根据刷新粒度(与监控粒度是对应的)以及对应刷新粒度的面板控制逻辑,将数据写入到显示面板的各像素点中。

在执行S6之后,回到步骤S3,重复执行步骤S3。

在步骤S6中,显示面板的显示逻辑仅会将凸显帧中发送变化的部分,输出给面板进行显示,本发明实施例还提供了显示逻辑的具体结构。以监控粒度和刷新的粒度为行,举例说明,如图9所示如下:

显示面板的刷新,一般是以从上到下、从左到右、逐行扫描的方式来进行的。因此,显示面板的刷新逻辑,可以由行驱动和列驱动逻辑组成。本发明实施例在执行事件驱动的刷新过程中,并非面板上所有的像素点都需要刷新,而是仅刷新步骤S4中指示的修改过的图像帧数据。本发明实施例中,刷新的粒度可以是单个的行或是单个像素点,与帧缓存区状态模块的监控粒度相同。显示面板的控制逻辑则根据刷新粒度来调整刷新逻辑。

在图9所示结构中,以缓存行作为刷新粒度的行驱动逻辑的刷新逻辑结构示意图。

其中,移位寄存器(Shift Registers),用于存储整个图像帧,控制当前要刷新的行,一般是以移位的方式顺序产生;

电平位移器(Level Shifters)和输出缓冲区(Output Buffer),用于产生用于驱动当前行的信号(Line),将当前需要刷新的行输出到面板的对应区域(Line0、Line1、Line2或者其他行);

以上是针对整个图像帧的逐行刷新结构,相比于整个图像帧的逐行的刷新逻辑,本发明实施例还增加了行访问寄存器(Row Access Registers)、相应的信号线、以及额外的逻辑门电路。

行访问寄存器,用于存储整个帧缓存区用于显示的图像帧的各行是否被修改的信息,这个状态可以是帧缓存区状态模块中记录的信息。当行访问寄存器中显示帧缓存行未被修改时,行访问寄存器对应的值为0。

输出使能信号(Output Enable,OE),是允许打开或关闭行输出信号。如果行输出信号关闭,数据不能被写入到该行的所有像素点。因此,通过关闭行输出信号,就能达到不刷新当前行数据的目的。VCLK是时钟信号源,VSync是启动和驱动逐行扫描的信号源。

当行访问寄存器中显示帧缓存行未被修改时,行访问寄存器对应的值为0。此时通过OE信号和与门电路的作用,对应行的所有像素点都不允许被写入数据。相反,当帧缓存行发生修改时,该行对应的像素点允许写入数据,需要将修改的行的图像帧数据写入到像素点中。这样,发生修改的帧缓存行的图像帧数据都会被更新,而未发生修改的帧缓存行的图像帧数据维持不变。从实现了部分刷新的目的。

本发明实施例还提供了一种显示设备的刷新控制装置,如图10所示,包括:

刷新控制器1001,用于周期性产生第一刷新信号,并发送给直接内存存取控制器;产生上述第一刷新信号的周期,短于上述显示面板的像素点因漏电出现失真的时长;以及,用于确定上述帧缓存区存储的用于显示的图像帧发生改变时,则产生第二刷新信号,并发送给上述直接内存存取控制器;

直接内存存取控制器1002,用于在接收到上述刷新控制器1001发送的上述第一刷新信号,或者接收到上述刷新控制器1001发送的上述第二刷新信号后,将存储器的帧缓存区存储的用于显示的图像帧输出到显示面板。

由于本发明实施例采用了事件触发的方式进行刷新,因此在某些场景下会存在刷新频率极低的情况,如果刷新频率过低则可能出现显示器的显示面板的像素点因漏电出现失真,这时会出现图像失真的情况;为了避免这种情况的发生,本步骤用于保证最低刷新频率,防止显示器面板的像素点因漏电出现失真。

另外,在本发明实施例中,保证最低刷新频率的方案除了以上周期性产生第一刷新信号的方案以外,还可以采用例如:监控刷新等待时长(即没有向显示面板输出图像帧的等待时长),如果刷新等待时长与显示面板漏电出现失真的时长的差小于设定阈值,则产生第一刷新信号,将帧缓存区存储的用于显示的图像帧输出到显示面板。这种方案不需要周期性的刷新,可以进一步的降低不必要的刷新操作。

在本发明实施例中,图像帧存储在帧缓存区,帧缓存区可能有多个,在本发明实施例中需要监控的是用于存放需要显示到显示面板的图像帧的帧缓存区。上述帧缓存区存储的用于显示的图像帧是否发生改变的确定方式,可以由内存控制器执行监控,并将监控到的信息传递给显示设备的刷新控制装置。内存控制器监控用于显示的图像帧是否发生改变通常可以是监控帧缓存区的数据是否发生了改变,监控的方式依具体的内存子系统结构的不同而不同,只要能及时确定图像帧改变就可以,本发明实施例对此不做唯一性限定。

本发明实施例,通过周期性产生第一刷新信号可以防止显示面板的像素点因漏电出现失真,上述第二刷新信号的产生频率是为了防止显示器面板的像素点因漏电出现失真设定的,因此会远小于用于保证图像帧及时显示所需要的频率;另外,在帧缓存区存储的图像帧发生改变的时候,可以确定图像帧需要被刷新到显示面板。通过监控图像帧的变化这一事件来触发图像帧的刷新操作可以保证图像帧被及时显示,而不再需要使用过高的刷新频率来保证图像帧被及时显示;因此本发明实施例可以减少不必要的刷新操作,从而降低系统资源消耗以及内存消耗。

在本发明实施例中,事件触发的方式,可以是刷新整个用于显示的图像帧(即整体刷新),也可以是刷新用于显示的图像帧中发生改变的部分(即部分刷新);另外,本发明实施例还提供了具体如何确定图像帧发生改变的实现方案,其中整体刷新的实现方案可以如下:

上述刷新控制器1001,用于检测到上述用于显示的图像帧发生切换时,产生第二刷新信号,并发送给上述直接内存存取控制器1002;

上述直接内存存取控制器1002,用于接收到上述第二刷新信号后,将上述帧缓存区内存储的用于显示的整个图像帧输出到上述显示面板。

在本发明实施例中,还提供了如何确定帧缓存区存储的用于显示的图像帧是否发生改变的可选实现方案,并据此进行部分刷新的方案,具体如下:

上述刷新控制器1001,用于检测到上述用于显示的图像帧发生切换时,获取图像帧状态参数,并产生第二刷新信号,并发送给上述直接内存存取控制器1002;上述图像帧状态参数标识上述用于显示的图像帧发生变化的图像数据对应的地址;

上述直接内存存取控制器1002,用于接收到上述第二刷新信号后,根据上述第二刷新信号,将上述帧缓存区内存储的用于显示的图像帧中发生变化的地址对应的图像数据输出到上述显示面板。

在本实施例中,图像帧状态参数可以存储在帧缓存区状态模块,帧缓存区状态模块存储的图像帧状态参数由内存控制器监控在确定上述帧缓存区存储的用于显示的图像帧发生改变后存入;上述帧缓存区状态模块可以是内存子系统内的一个新增模块,显示控制器从上述帧缓存区状态模块内读取上述图像帧状态参数。

由于本发明实施例采用了事件触发的方式进行刷新,那么图像帧的更新这一事件可以进行粒度的划分,从而实现仅对图像帧中那些发生改变的像素或者行或者列的图像帧数据进行刷新,而不必对所有的图像帧数据进行刷新,从而进一步的减少刷新数据量,减少对内存的占用,具体如下:

上述刷新控制器1001,用于获取上述图像帧状态参数,其中,上述图像帧状态参数用于标识上述用于显示的图像帧中发生变化的行、列或者像素点的地址;

上述直接内存存取控制器1002,用于在接收到第二刷新信号后,将上述帧缓存区内存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址对应的图像数据输出到上述显示面板。

在本发明实施例可以仅对帧缓存区内存储的用于显示的图像帧中发生变化的部分进行刷新,那么本发明实施例中需要获得帧缓存区内存储的用于显示的图像帧中发生变化的部分的数据,本实施例还提供了如何获得这些数据的具体实现方式,如下:上述直接内存存取控制器1002,用于依据上述图像帧状态参数确定上述帧缓存区存储的用于显示的图像帧中发生变化的行、或列、或者像素点的地址,向上述内存控制器发送数据读取请求,上述数据读取请求用于读取上述用于显示的图像帧中发生变化的行、列或者像素点的地址对应的图像数据;接收上述内存控制器返回的图像数据,并将接收到的图像数据输出到上述显示面板。

值得注意的是,上述装置和系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1