图像自动重复显示系统及显示方法
技术领域
本发明涉及一种图像显示系统及方法,尤其是一种在图像显示系统中通过增加存储硬件,在数据缓冲区中没有足够的数据可供新一帧图像显示时,实现图像自动重复显示的系统以及与该系统相适应的自动重复显示方法。
背景技术
在图像显示系统中,需要显示的图像通常以帧为单位构成图像数据,这些图像数据按照其显示顺序被逐条从图像提供设备(如外部储存设备)送到数据缓冲区中。显示模块从储存图像数据的数据缓冲区中实时读取图像数据送给外部显示装置(如电视、显示器等)进行显示。在先的图像数据被读取并送出后,显示模块继续读取下一帧图像数据。图像显示一旦开始将持续不间断地进行(除非有外部控制信号中断显示),直到全部图像显示完毕。
在上述图像显示的进行过程中,当前一帧图像显示完毕,而后一帧图像数据还没有在数据缓冲区中准备好,图像显示就出现了中断,直到新的图像数据准备好后,才能继续进行图像显示,从而出现了图像断续显示的现象。
发明内容
本发明所要解决的技术问题在于针对上述由于数据缓冲区中尚未准备好需要显示的图像数据而出现图像显示中断的现象提供一种图像自动重复显示系统,该系统通过增设备份地址寄存器,对已经显示的图像数据地址进行备份,就可以在新的图像数据尚未准备好时,自动重复显示前一帧图像,从而保证显示画面连续,不中断。
本发明所要解决的另一个技术问题在于利用上述图像自动重复显示系统在数据缓冲区中尚未准备好需要显示的图像数据时提供一种图像自动重复显示方法,该方法能够在出现图像显示中断时自动显示前一帧图像,以保证图像显示的连续性。
本发明所要解决的技术问题是通过以下技术方案实现的:
一种图像自动重复显示系统,它至少包括控制模块、用于存放需显示图像数据的数据缓冲区以及能够根据控制模块发出的控制指令读取所述数据缓冲区中图像数据并向外部显示装置输出进行显示操作的显示模块。其中显示模块中还包括地址寄存器、备份寄存器和地址判断部。
地址寄存器用于存放需显示图像数据的地址并通过数据传输线路分别与控制模块及地址判断部连接。
备份寄存器与地址寄存器和地址判断部连接,在图像显示过程中,备份寄存器备份当前显示图像数据的地址。
地址判断部分别与地址寄存器、备份寄存器及显示控制部分连接,用于判断显示时将哪个寄存器中的地址送给显示控制部分。
上述系统在工作中,需要显示的图像数据以帧为单位被送入数据缓冲区,其第一个数据在数据缓冲区中的地址在一帧数据送入数据缓冲区后被送入所述地址寄存器。
显示模块中的显示控制部分提取地址寄存器中的地址后将需要显示的图像数据读出并送到外部显示装置,同时,所提取的地址被送入所述备份寄存器中。由于每一帧图像数据是按照一定的格式存放在数据缓冲区中,因此,显示模块提取地址后,余下的地址可以按照约定的格式自行计算。
在图像显示的过程中,当后续图像尚未准备好时,在备份寄存器中所备份的地址能够为显示模块自动重复显示前一帧图像提供图像数据地址。
一种采用上述图像自动重复显示系统实现图像自动重复显示的方法。显示开始后,显示控制部分读取地址寄存器中需要显示的图像数据的地址,并依照该地址从数据缓冲区中提取需要显示的后续图像数据,将其送到外部显示装置,同时,将当前显示帧的地址放入所述备份寄存器中;当显示模块在完成第一帧图像显示后,按照以下步骤完成后续图像的显示操作:
首先,地址判断部判断所述地址寄存器相应的读取位置是否为空,若非空,显示控制部分则读取所述地址寄存器中需要显示的后续图像数据的地址,并依照该地址从所述数据缓冲区中提取需要显示的后续图像数据,将其送到外部显示装置,同时,将当前显示帧的地址放入所述备份寄存器。当完成图像显示后,显示模块在没有收到中止显示指令时,返回开始。
当地址判断部判断所述地址寄存器相应的读取位置为空时,显示控制部分则从所述备份寄存器中读取前一帧图像数据地址,并依照该地址从所述数据缓冲区中提取前一帧图像数据,将其送到外部显示装置,同时,将当前显示帧的地址继续保存在所述备份寄存器中。当完成前一帧图像显示后,显示模块在没有收到中止显示指令时,返回开始。
上述显示过程中,显示模块在控制软件的控制下,通过对地址寄存器中地址位置是否为空判断数据缓冲区中的图像数据是否已经准备完毕,在尚未准备完毕时,能够自动重复显示前一帧图像,之后,继续通过对地址寄存器是否为空来判断图像数据的准备状况,在自动重复显示前一帧图像时,由于人眼的视觉暂存效应,偶尔几帧的重复显示是看不出来的,所以,外部显示装置始终没有出现图像显示中断的现象。
由以上技术方案可以看出,本发明通过增加的地址寄存器、备份寄存器,并且通过对控制软件的适应调整,使显示模块在数据缓冲区中的后续图像未准备好时,能够以自动重复显示前一帧图像的方式,保证外部显示装置不会发生图像显示中断现象。
附图说明
图1为本发明所提供一实施例的系统结构示意图;
图2为本发明所提供的图像自动重复显示流程图。
具体实施方式
以下,通过具体实施例并结合附图对本发明做进一步的详细说明。
图1所示为本发明所提供一具体实施例的系统结构示意图。所示结构仅为与本发明有关的显示部分。该系统中至少包括控制模块、数据缓冲区、显示模块。
控制模块将准备好的每一帧图像数据按照约定的格式存放在数据缓冲区中。数据缓冲区应该足够大以保证可以存放不少于两帧图像的数据。
显示模块中设有用于存放图像数据在数据缓冲区中地址的先入先出寄存器FIFO(First-in First-out)、备份寄存器和地址判断部。FIFO的大小可根据实际需要设定,但至少设有供两帧相邻图像数据分别存放地址的空间。
显示模块中的显示控制部分能够根据控制模块发出的控制指令提取FIFO中的地址,按照地址读取数据缓冲区中图像数据向外部显示装置输出。
备份寄存器与地址寄存器和地址判断部连接,在图像显示过程中,备份寄存器备份当前显示图像数据的地址。
地址判断部分别与地址寄存器、备份寄存器及显示控制部分连接,用于判断显示时将哪个寄存器中的地址送给显示控制部分。
上述系统在进行图像显示时,控制模块将需要显示的第一帧图像数据存放在数据缓冲区中。将要显示的这一帧图像数据在数据缓冲区中的地址则被送入FIFO中。控制软件通知显示模块开始显示操作,显示模块提取FIFO中第一帧图像数据地址,将该地址送入备份寄存器中,并从数据缓冲区中读取这一帧图像数据(因此第一帧图像一定可以正常显示)。
由于每一帧图像数据是按照约定的格式存放在数据缓冲区中,因此每帧显示时控制软件只需要向显示模块发一个地址(即第一帧图像的第一个数据的在数据缓冲区中的地址,余下数据的地址显示模块可以根据约定的格式自行计算)。
控制模块在进行图像输出显示时,将准备好的图像数据陆续送入数据缓冲区,同时将每一帧图像的地址顺序存入FIFO。当后续图像数据未准备好时,FIFO中的后续图像地址位置为空。
当第一帧图像显示完毕后,显示模块按照图2所示的流程进行后续图像显示的操作。
显示模块中的地址判断部首先判断FIFO尚未读取的后续图像数据地址空间是否为空,若非空,则显示控制部分提取FIFO中需要显示的后续图像数据的地址,依照该地址从所述数据缓冲区中提取需要显示的后续图像数据,将其送到外部显示装置,同时,将当前显示帧的地址放入备份寄存器中。当完成图像显示后,显示模块在没有收到中止显示指令时,回到开始,判断FIFO尚未读取的后续图像数据地址空间是否为空。
当FIFO尚未读取的后续图像数据地址空间为空时,显示控制部分从备份寄存器中读取前一帧图像数据地址,依照该地址从数据缓冲区中提取前一帧图像数据,送到外部显示装置,同时,将当前显示帧的地址继续保存在备份寄存器中。显示模块在完成前一帧图像显示后,在没有收到中止显示的指令下,回到开始,判断FIFO尚未读取的后续图像数据地址空间是否为空。
在上述显示过程中,显示模块能够自动根据FIFO中地址位置是否为空来判断数据缓冲区中需要显示的后续图像是否已经准备就绪,在未准备就绪的情况下,自动重复现实前一帧图像,从而消除了显示过程中由于数据没有准备好而造成的显示中断现象,保证了显示画面的连续。
最后所应说明的是:以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。