9.1.2. 功能描述

9.1.2.1. 影子寄存器(shadow register)

为了实现一组配置同时生效,DE的大部分寄存器都是对应2个寄存器。软件可以操作的寄存器为 preload register,软件看不到硬件操作的寄存器为shadow register。当软件配置好一组参数到 preload register后,然后设置CONFIG_UPDATE为1,把所有的preload register寄存器值同时更新到 shadow register。

CRC校验、CCM和Gamma矫正、QoS、Timing相关寄存器和DE配置更新寄存器没有shadow register, 其他的寄存器都有shadow register。

9.1.2.2. UI图层

UI图层有4个矩形窗口,每个窗口可以单独控制开关,4个窗口可以通过设置各自以UI图层左上角为原 点的坐标,控制显示在UI图层的不同位置。4个窗口设置Buffer的颜色格式必须一致。矩形窗口对应的 Buffer可以是对原始图像裁剪的一块区域,通过软件计算出相应矩形区域的addr,并且4个矩形窗口不 可重叠,需要进行有效性检查。

../../../_images/de_function_ui.png

图 9.1 UI图层

9.1.2.3. 色彩矩阵(CCM)

色彩矩阵(Color Correction Matrix,CCM)由一个3x3的增益矩阵及3x1的偏移矩阵组成。CCM矩阵如下公式所示。

../../../_images/de_ccm0.png

图 9.2 CCM公式

../../../_images/de_ccm1.png

图 9.3 CCM输出范围限制

  • 其中Nbit是R,G,B输入输出位宽:8

  • Cij: 12bits有符号数,其中8bits小数

  • Offset: 9bits有符号整数

9.1.2.4. Gamma矫正

Gamma矫正R、G、 B三个通道分别独立进行矫正,通过查表的方式进行矫正,输入数据的位宽为8bits,LUT的长度为为64,硬件通过线性插值得到两个节点之间的输入值对应的gamma 矫正结果

9.1.2.5. 限制条件

  • 支持屏幕最小size为64x64

  • 模块时钟最高可到100MHz

  • pixel clk要小于DE模块时钟

  • 当开启Dither功能时,屏幕宽度最大到1024(单位为pixel)

  • UI图层矩形窗支持的最小size为:2x2(单位为pixel)

  • 所有格式的stride都要求8bytes对齐