微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于AHB接口的高性能LCD控制器IP设计

基于AHB接口的高性能LCD控制器IP设计

时间:09-03 来源:电子工程专辑 点击:
图像控制

一、 画中画(PIP)

FTLCDC200能够支持两个PIP画面。加上主画面,在一块显示面板上用户最多可以看到三个画面。PIP画面的尺寸最大能够放大到主画面的大小。一个4位的可配置透明度控制使得三个画面可以更加容易的重叠(overlay)。当透明功能被启用,直接存储器访问(DMA)必须读入所有需要进行重叠的像素。AHB的带宽就是三个画面所有像素的总和。当PIP启动,所有的画面只能为以下的某种格式:RGB888, RGB565, RGB555, RGB444, 或者YCbCr422.

FTLCDC200的带宽需求能够用以下的公式来计算(除了PIP之外的任何功能) :

水平输入分辨率x垂直输入分辨率x帧刷新率x bpp x 1.2 (仲裁) / 带宽当使用PIP功能, 带宽的评估如下:

imag0的带宽+image1的带宽+img2的带宽


二、 多画面(POP)

FTLCDC200能够合并四个四分之一大小的画面到一个屏幕上。其中每个画面的大小都被限制在四分之一屏幕大小。四画面的每一个图像通道,FTLCDC200都能够把原图像进行"1/2 X 1/2"的图像缩小。当POP模式启动后,所有的四个画面都只能是以下的某种格式:RGB888, RGB565, RGB555, RGB444或YCbCr422。事实上在PIP或POP模式下,所用到的图像格式必须是同一种, 而且必须是RGB888, RGB565, RGB555, RGB444或 YCbCr422里面的一种。

1.要实现PIP功能(2幅图),不能1幅RGB888,另外1幅是YCbCr422模式。

2.要实现PIP或POP模式,不能输入YUV420格式的图像。


复杂OSD模块的设计概念

一、 OSD ROM/RAM 接口

该模块包含了一些多路选择器,他会从OSD控制单元模块输出ROM/RAM的地址总线。目前OSD能够支持的字符存储容量为512个,每一个由12位组成。OSD的属性随机存储器也支持512个字符的容量,不同的是每一个由18位组成。

二、 OSD 控制单元


该模块是OSD的核心单元。它包含像素/行计数器、OSD窗口地址控制、两个有限状态机--用来控制对字符和属性存储器的访问。

三、 OSD 混效器

该模块的作用是计算OSD字符或者某些窗口特殊操作,譬如OSD窗口透明、字符缩放、字符加边框/阴影和窗口加边框/阴影特效。出现这些操作时,有标志位会注明当前使用的窗口、窗口特效、字符和字符特效中的哪些指令,OSD 混效器会根据这标志来选择合适的调色板。

四、 OSD 调色板

根据寄存器的设置,OSD 调色板模块输出经过映射后的前景色、背景色、窗口边框色、窗口阴影色、字符边框色、字符阴影色。

特别强调这里的简单?OSD 功能只支持一层重叠。复杂OSD 功能 可以支持四层OSD 并且可以配置层数。

Scalar模块的设计概念

图2为Scalar 模块的方块图,以下就其各个子模块作介绍, 这里的设计特点在只是用了(1024+2048)x24大小的行缓冲区, 大幅减小了IP的面积。

一、 滤波器

这是个128抽头的滤波器,使用线性插值算法来对水平方向的像素数据进行第一步的缩小操作,系数可选:1/2,1/3,1/4……. ,1/128。

二、 1024x24 行缓冲区

该行缓冲区来存储被滤波器处理过的一行数据。

三、 1024x24 行缓冲区控制器

该控制器控制着缓冲区数据的访问。缓冲区中被读出的数据会反馈到输入端口,跟第二行的像素数据进行线性插值,也就是垂直插值的处理。

四、 2048x24 行缓冲区

这个行缓冲区是一个乒乓结构的存储器,它由两个1024x24位的单端口SRAM组成。因为我们放大的处理是基于双线性算法,所以垂直放大系数被限制在2,乒乓结构可以提供同时进行读/写操作的机制,使得我们能够把行缓冲区存储器的大小压缩到仅仅一行像素数据的规模。

五、 2048x24 行缓冲区控制器

该控制器提供必需的地址线和控制信号给乒乓结构的行缓冲区,以确保RGB像素数据能够同时正确的被写入和读出。除了这个基本的控制功能以外,它也提供了一个可靠的外部LCD控制器访问接口。

六、 垂直Scalar滤波器

该垂直Scalar滤波器是2抽头,它执行一个"加-乘"混合计算(y[n] = a * x[n] + (1-a) * x[n-1])。x[n]是当前行的像素数据,x[n-1]是上一行的像素数据,y[n]是滤波器的输出。a和(1-a)都是滤波器因子。由于R/G/B各数据是独立进行处理的,所以每一种色彩像素数据处理需要两个8x9位的乘法器和一个17位的加法器。



七、 垂直Scalar系数产生器

该发生器分为放大系数产生器和缩小系数产生器。他们都会产生一个9位的系数,MSB代表整数部分,其余的都是小数部分。这个系数为输入图像垂直分辨率和输出图像垂直分辨率的比值。

八、 Scalar数据FIFO

该数据FIFO的存储深度为8,垂直缩放模块输入数据到FIFO,水平缩放模块读出数据用来处理后续的水平像素数据。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top