摘 要:AL440B是由AVERLOGIC公司新近推出的一款高速大容量视频帧存储芯片。本文介绍了它的性能特点,分析了其功能与操作,最后通过目前已实现的视频回放系统实例,详细讲解了AL440B高速缓冲与视频格式转换功能的实现。 关键词:视频帧存储;AL440B,;回放显示;格式转换
引言 AL440B是由AVERLOGIC推出的一款性价比较高的视频帧存储芯片,目前市场上FIFO的存储容量均比较小,包括该公司前几年推出的具有3M位容量的AL422系列FIFO芯片,也逐渐无法适应目前高分辨率视频技术的发展。AL440B沿袭了AL422B的设计思想,从功能、容量、速度上比AL422均有显著提高。例如:AL440B具有4M位存储容量,存储速度可达80MHz,具有用户可控的读写使能,输入输出使能及读写复位输入端口,可以通过I2C读写其内部寄存器控制读写初始地址,可以方便进行总线扩展。文章首先介绍AL440B的功能与操作,然后给出一个应用实例。
芯片简介 ☆ 芯片特点 ⑴ AL440B的存储体容量为4M位(512 8bits)。 ⑵ 具有8位独立读写端口,可扩展总线。 ⑶ 独立且极性可控的读写有效、输入输出使能控制端口。 ⑷ 异步读写时钟,最高读写时钟80MHz。 ⑸ 内部DRAM自刷新。 ⑹ 支持窗口读写操作,I2C读写内部寄存器。 ⑺ 3.3V电源,兼容5V输入信号。
☆ 主要管脚功能及操作 IO[7:0],DO[7:0]:8位数据输入输出。 RCLK, WCLK:读写数据时钟。 WE:写FIFO使能信号。WE有效,则在WCLK上升沿输出数据,同时内部指针自动加1。 IE:输入使能信号。IE有效时,允许数据输入;IE处于无效态时,数据 输出端为高阻,此时若WE有效,内部指针仍然自动加1。 WRST:写FIFO复位,写地址指针指向0。 RE:读FIFO使能信号。RE有效,则在RCLK上升沿输出数据,同时内部指针自动加1。 OE:输出使能信号。OE有效时,允许数据输出;OE处于无效态时,数据输出端为高阻,此时若RE有效,内部指针仍然自动加1。 RRST:读FIFO复位,读地址指针指向0。 ORDY:FIFO输出准备好标志位,说明FIFO是否已读空。 IRDY:FIFO输入准备好标志位,说明FIFO是否已写满。 /PLRTY:PLRTY决定了以上8个控制信号的有效极性。/PLRTY置高,以上八个控制信号低有效;/PLRTY置低,以上八个控制信号高有效。 /RESET:复位管脚;复位操作至少要提供200 s负脉冲,系统复位后,各寄存器全部置零。 SDA,SCL:串行总线的数据线与时钟线。 /SDAEN:串行总线使能控制信号。当/SDAEN置低时,SDA与SCL使能,可以读写内部寄存器;反之SDA处于高阻态。
令/PLRTY=VDD,AL440B的读写时序如表1、表2所示(/PLRTY=GND的时序略)。 表1:/PLRTY=VDD时,FIFO的写时序(略) 表2:/PLRTY=VDD时,FIFO的读时序(略)
注意:写地址必须先于读地址192个周期,否则读到的为上一帧的数据。
☆ 寄存器操作与窗口编程 AL440B内部18个可读写寄存器主要提供窗口读写功能操作,通过串行总线配置。读写命令格式如下: 写:开始->写从地址->应答->寄存器地址->应答->数据->应答->结束; 读:开始->读从地址->应答->寄存器地址->应答->开始->读从地址->应答->数据 ->非应答->结束;
寄存器定义与配置如下: WSTART_L(H):窗口写起始地址低位(高位),范围在0-8191存储区。 WXSIZE_L(H):定义窗口写水平方向宽度,范围在0-1023存储区。 WSTRIDE_L(H):定义窗口写水平方向最大宽度;范围在 4096-+4096存储区,当为负值时表示FIFO工作在Y-MIRROR模式,WSTRIDE应大于等于WXSIZE。 WYSIZE_L(H):定义窗口写垂直方向高度,保留且为0。 RSTART_L(H):窗口读起始地址低位(高位),范围在0 8191存储区。 RXSIZE_L(H):范围在0-1023存储区。 RSTRIDE_L(H):范围在0-+4096存储区。 RYSIZE_L(H):定义窗口读垂直方向高度,范围在0-65535。 WWCTRL:写窗口功能模式选择,其中No X-mirror No Y-mirror表示按照存储区由左至右、由上到下写入,X-mirror模式表示由右至左、由上到下写入,X-mirror Y-mirror模式表示由右至左、由下到上写入。 RWCTRL:读窗口功能选择。
AL440B的窗口操作将存储空间分为XY两个方向,读写方向、读写数据量都可以不同,这使得例如画中画、工控领域窗口显示、图像截取等应用设计变得十分简单。
AL440B的典型应用 视频帧存储器可以用在扫描转换、NTSC/PAL、SVGA、XGA视频捕获系统、时基校正、画中画视频显示、帧同步器、通信缓冲等。此外,AL440B还可应用于视频采集系统,视频分割系统等等应用中。
应用实例 在高分辨(或低分辨率)率高帧频(或低帧频)数字视频到标准PAL制转换的回放显示系统中,AL440B可以做高速视频缓冲器或视频格式转换器使用。
前端输入为16位并行YUV格式数字图像,分辨率为800 600,帧频80帧/s,数据时钟为54Hz。数字图像到标准PAL制模拟视频的转换用专用视频编码器(CX25871)实现。
专用编码芯片对输入数据的时序与格式有一定的要求,例如输入帧频要固定为50帧/s,分辨率有最高最低限度,数据时钟根据不同的输出要求也各异,对于帧频较高的输入要进行抽帧,反之要进行插帧或帧重复读取;分辨率高于最高限度的要进行行抽取与象素抽取,反之要进行行插入与象素插入;输入输出时钟频率也要进行相应的匹配。
整个逻辑可以由CPLD配合两组AL440B实现。其中AL440B用做扫描转换器与数据缓冲器,CPLD提供对FIFO单元的相关控制逻辑与时序逻辑。其基本设计思想为:
当输入帧频高于50帧/s时,抽取50帧,当输入帧频低于50帧/s时,采取对某些帧重复读取的办法;设计时要考虑所抽取的帧(或重读的帧)要在时间轴上均匀散开,保证恢复图像的连续性;保证读FIFO单元1(以下简称F1)时才允许写FIFO单元2(以下简称F2),如果写FIFO2先于读F1结束,那么读完F1后直接读取F2,如果F1读完F2还没有写完则多次重复读取FIFO1,直到写F2结束为止,注意,在连续读取F1的过程中只允许写一遍F2;F2写完则允许开始读取F2,读F2的过程中写F1,过程与上类似。每次读写FIFO之前都要给出FIFO的复位信号,将读写起始地址置零,以保证每次FIFO中存放的为完整的一帧图像。
其中WRST1、WRST2、RRST1、RRST2分别为两个FIFO单元的帧读写复位信号,WRITE1、WRITE2、READ1、READ2分别为两个FIFO单元的输入输出使能信号。输入输出使能信号必须与输入数据行有效信号H_ACTIVE、消隐信号BLANK相与后的输出才可作为FIFO的读写使能信号。
该逻辑可以实现从几帧/s到上千帧/s图像到50帧/s图像的格式转换,同时实现了数据输出输入两端低速到高速或高速到低速数据时钟的匹配。
由于输入为16位YUV4:2:2格式图像,每一组FIFO由两片AL440B并连。其中FIFO1接收Y7-Y0,FIFO2高四位接收U3-U0,低四位接收V4-V0。
结语 文章介绍了视频帧存储器AL440B的特点及功能,并给出一个已经实现的应用实例。AL440B与AL422相比具有更大的容量,更高的读写速率,可以支持DTV(HDTV)视频缓冲,可以支持1024 768分辨率75帧/s(XGA模式)非标视频信号的扫描转换(AL422仅能支持VGA模式)。随着视频显示技术、视频存储技术不断向着高分辨率、高帧频、高速度的方向发展,高速大容量视频帧存储器将具有更为广泛的应用前景。 |