Android屏幕刷新机制
显示硬件基础
常见的显示设备有LCD(液晶)、CRT(阴极摄像管显示器)、OLED(有机发光二极管)和LED。对于手机、车机等基本都是使用LCD,LCD的接口技术有VGA、HDMI、DVI、LVDS和MIPI,目前手机屏幕和SOC间大多使用MIPI接口来传输屏幕数据,其中负责控制显示的驱动芯片简称为DDIC(Display Driver Integrated Circuit),它一边通过mipi协议和SOC通信,一边把获取到的显示数据写入到显示存储器GRAM中,屏幕通过不断扫描GRAM来不停更新液晶显示点的颜色,从而实现画面的更新。
在Android的显示系统中,一般包括SOC、DDIC和Panel三个部分,SOC负责绘画与多图层的合成,把合成好的数据通过硬件接口按照某种协议传输给DDIC,然后DDIC负责把buffer里的数据呈现到Panel上。如下图所示为高通平台上的画面更新的示意图,首先由CPU或GPU负责绘画,画出的多个Layer交由MDP(Mobile Display Platform,它提供了硬件Overlay的功能)进行合成,合成的数据通过mipi协议和DSI总线传输给DDIC,DDIC将数据存储到GRAM内,Panel不断的扫描GRAM的数据来显示。对于DDIC来说&