分场分区存储技术的原理及应用介绍
扫描二维码
随时随地手机看文章
1 引 言
LED视频显示屏由于亮度高、视角广、寿命长、性价比高,而且具有可与计算机同步显示各种文字、图形、图像,可实时播放电视、录像、影碟等视频信号,可即时输入、编辑各种多媒体数据等优点,使其在街头、广场、商业中心、运动场所、娱乐场所、控制中心许多公共场合得到了广泛的应用。但是由于技术的问题,特大视频显示屏还面临着严峻的挑战,主要表现在灰度级低,亮度损失严重,刷新速度低。另外,本文的视频信号源来自DVI(Digital Video InteRFace)接口,DVI接口输出的为数字视频信号,信息量大,一般是先经过外部RAM(Random Array Memory)缓存,然后由处理器对视频信号进行处理。可用于数字图像存储的外部存储器有很多种,如SRAM,DRAM和SDRAM,它们的容量和速度各不相同。DRAM和SDRAM属于动态存储器,容量大,使用中需要刷新,当处理器没有外部动态RAM接口时,就需要设计刷新电路,这给系统应用带来不便;SRAM不用刷新,不需要专用接口,实时性好,并且可以进行跳地址寻址,所以本文利用SRAM作为外部缓存存储器。采用分场分区存储技术,使刷新频率大为提高,图像显示效果清晰稳定,实现了分辨率800×256,刷新频率90 Hz,红绿蓝三色256×256×256灰度级的视频显示系统。同时,采用该技术,亮度和灰度级方便可调,亮度损失小。
2 系统组成
LED视频显示系统总体框图如图1所示:该系统由发送和接收两部分组成,发送部分的功能主要是对DVI接口传输的视频信号进行编解码形成24 b真彩色视频数据和点时钟(CLK),行同步信号(HS),场同步信号(VS),数据有效信号(DE)等控制信号,通过LVDS(Low Voltage Differential Signaling)电平传输到接收卡上,经过接收卡的数据处理传送给具有特定驱动结构(1/8扫描方式,74HC595驱动芯片)韵LED大屏。本文的重点是介绍接收卡的数据处理模块。
3 数据处理
数据处理流程如图2所示:接收卡接收发送卡传输过来的视频信号(控制信号和数据信号),将视频信号中的数据经过位面分离,分场存入外部缓存,然后分区读出,传送给显示驱动屏。其中位面分离模块将不同数据的同权位重新组合成新的数据存储在存储器中。外部缓存采用两个SRAM乒乓缓存的技术,实现数据的流水线处理。下面分别介绍位面分离模块和分场分区存储的原理和实现。
3.1 位面分离模块
视频显示屏采用的灰度级控制方式为分场叠加与占空比相结合的方式,如表1所示:其中分场叠加是指用不同场次的恒频扫描来实现不同灰度级,如表1 的D7~D4;占空比控制是指控制点亮时间与关断时间的占空比来实现灰度的调节,如表1的D3~D0。而这两种方式的前提都是要实现视频数据的位面分离。位面分离用FPGA来实现,一共包括两大模块,数据移位寄存器和数据选择器。用VHDL实现的原理框图如图3所示,其中r0-7,g0-7,b0-7分别是真彩色图像数据的红绿蓝三色,分别占用一个字节。把这24位数据线分别通过一个8位宽数据移位寄存器寄存,然后通过一个颜色位选择器输出到外部缓存器中。通过控制缓存器的地址实现位面分离,外部缓存的数据宽度为24位,使RGB三种颜色并行进行位面分离。其中移位寄存器使用了流水线的技术,在锁存输出前8个数据的同权位的同时,移进第9个数据的同权位,这样提高了数据处理的效率。
3.2 分场分区存储
数据经过位面分离以后,不同数据的同权位组成了新的数据,通过控制存储器的地址使一帧所有数据的同权位写在存储器的同一段中,因此对写地址发生器要求比较高。该系统要求256级灰度,那么将存储器分成8个段,每个段存储代表同一个权值的位(场)。其中,8个段用3(23)根地址线来代替,分辨率为800*256的大屏有256行,800列,那么行地址用8(28)根地址线表示,这8根地址线前5位为区地址(32区),后3位为一个区的行地址 (1/8扫描)。列地址用7(27)根地址线来表示,因为存储器为24位宽,一个存储单元代表LED显示屏8个RGB点的同权位,其优先级从高到底的顺序为:场地址>列地址>行地址。分别用计数器来实现,这三个计数器级联就构成了存储器的写地址,其连接方式为:场地址(A17~A15),区地址(A14~A10),区内行地址(A9~A7),列地址(A6~A0)。由此可见,通过改变存储器地址线的优先级可实现分场(8场)存储。
数据分8场写入存储器,读出时要求分19场读出,并且要控制每一场的显示时间。所以在产生读地址的场地址计数器的时候,先设计一个19进制的计数器counter19(0~18)。表2为counter19和场地址计数器的关系:每一场的显示时间是用比较器来实现的,可以通过改变比较器中的值灵活地校正灰度和亮度。
LED显示屏要求32区同时点亮,采用数据的并行处理,降低硬件消耗和系统工作频率。提高刷新频率。由于存储器每次只能读出一个数据,所以必须采用分区锁存,然后把32区数据并行输出。
行地址和列地址同写地址发生器原理相同,这里主要介绍一下它们的优先级。数据已经是位面分离的,所以要想实现32区数据同时显示,那么区地址的优先级应为最高,其次是列地址,然后是行地址,最后是场地址。与存储器连接方式同写地址一样。[!--empirenews.page--]
4 仿真波形
位面分离模块的仿真波形如图4所示:其中RGBdin[23..16]为输入数据的高八位,rgb_regroup_output[23..16]为输出数据的高八位。flag为输入数据有效信号标志,flag_delay85为输出有效信号的标志。
波形分析如下:
输入数据前8个数据的前面7个都为00h,第8个为02h,这8个数据进行位面分离后输出见表3,由表3可以看出位面分离实现了前8个数据转置后从右往左读出。
图5为写地址的仿真波形,可以看出,场地址优先级最高,当场地址为7h时,列地址加1,当列地址为63h时,行地址加1,当行地址为7h时,区地址加1。同理可以看出图6读地址的进位顺序为:区地址为1Fh时,列地址加1,列地址为63h时,行地址加1,行地址为7h时,场地址按19场原理进行计数。图6中行地址为7h时,场地址并没有加1。图7为场地址计数器控制的占空比信号。该信号接显示屏驱动板行打描信号的使能端,通过控制扫描信号控制显示时间,从而实现灰度级。
5 结 语
针对LED视频显示屏的系统遇到的刷新速度和灰度控制问题,本文提出了一种分场分区存储技术,详细地介绍了其原理和实现。通过波形仿真和工程应用,该方法很好地解决了LED显示控制系统中图像闪烁,亮度损失大的问题,并且其灰度和亮度控制可以灵活校正。