论文部分内容阅读
进入二十一世纪以来,伴随嵌入式技术的发展以及嵌入式设备性能的提高,嵌入式设备在日常生活与工作中的应用越发广泛。由于图形用户接口(Graphical User Interface,GUI)能够极大地提高人机交互效率,用户也越来越重视嵌入式设备GUI系统的性能与可靠性,良好的人机界面接口成为了嵌入式系统设计的一个关键技术。但是,目前的嵌入式GUI系统底层图形支持基本使用软件实现,并不能充分发挥当前嵌入式设备图形显示硬件的性能。因此,结合具体的嵌入式GUI环境,对嵌入式系统环境下图形显示硬加速方法进行研究,是一个十分必要并有意义的工作。针对上述问题,本文选择Qt/Embedded GUI系统作为具体切入点,对其体系结构和通信机制进行详细分析,结合该系统特点以及嵌入式Linux下帧缓冲驱动体系特点,阐明了在嵌入式Linux环境下Qt/Embedded GUI系统的图形支持体系。并在目前的图形支持体系中,对Qt/Embedded嵌入式支持层经行了改进,从而实现Qt/Embedded GUI系统与嵌入式Linux操作系统帧缓冲体系的融合。利用嵌入式Linux操作系统帧缓冲体系中特定设备层Framebuffer的特定设备接口,建立嵌入式Linux操作系统帧缓冲驱动核心层与具体硬件之间的支持结构,从而建立起一种基于Qt/Embedded的显示硬件加速架构,最终实现对帧缓冲显示硬加速方法的支持。然后,依靠上述显示硬件加速架构,结合具体GPU图形核心Mali400MP,提出了基于帧缓冲驱动体系的嵌入式显示硬加速方法,在Linux帧缓冲设备支持层中增加了GPU硬件加速功能。该加速方法基于Mali400MP 2D加速功能与特性实现,在实现过程中,根据Mali400MP的具体2D加速功能实现方法和特殊功能寄存器的控制逻辑,完成了硬件加速过程中DMA操作和等待操作工作流程,对基本的图形操作矩形填充、位块传输、矩形区域复制的硬件加速方法做了具体的实现,并给出了上述方法的算法逻辑流程。最后,基于iTop-4412开发板的实验平台,设计了基于Qt/Embedded的嵌入式GUI系统图形硬加速实验方法,对图形显示硬加速方法进行了实验。对比Qt/Embedded原始图形绘制功能和硬件加速后的图形绘制方法的实验结果,可知硬件加速后的图形绘制方法获得了较好的效果,加速比基本维持在1.6以上,达到了预期目标。实验结果表明,基于Qt/Embedded的嵌入式Linux显示硬加速方法,为嵌入式GUI系统图形显示性能的提升提供了一种新的有效途径。