分类: LINUX
2011-08-14 22:29:46
先来讲讲PPP模块,这个模块在android中被copybit库抽象。在android中,很多对图像的操作,譬如缩放、BLIT、叠加等等,都可 以借由这个硬件模块来做,从而优化了系统性能。而如果使用纯软件的方法来做的话,会大大加重cpu的负担。但是,使用PPP模块有一个需要注意的地方,就 是必须使用物理连续的内存,这个主要是因为PPP目前还没有MMU模块,无法操作非物理连续内存所致。
下面来讲讲DMA_P模块,这个模块目前主要被客户用作主屏数据通道。如上图所示,DMA_P模块主要包括fetch/unpack/hw cursor blend/color correction/Histogram/gamma correction/dither/pack几个子模块,主要是数据送屏之前的预处理操作,涉及到一些图像处理的东西,这里我就不仔细说了。但是需要特 别主要的是,上图其实最后还有一个子模块,叫做tearing check,主要用于防止出现tearing现象(有关tearing的问题,可以参见我之前的一篇帖子)。如果当前是接的MDDI接口的panel, 该模块会起作用;而如果当前接的是RGB接口的panel,该模块会自动bypass。其他的DMA模块基本的东西都是差不多的,无非就是出去的接口有一 些不同,这里就不再细讲了。