EPM570在视频采集中的设计与应用
扫描二维码
随时随地手机看文章
1 引言
经济的发展促使着人们不断地提高安防意识,当传统的本地模拟监控方式逐渐不能满足某些行业大范围、远距离监控的需求,如银行跨地区联网监控时,通过网络将图像进行远程传输的集中监控方式应运而生。
基于网络的嵌入视频监控系统按照功能可划分为视频采集、视频压缩、视频传输三个模块。随着嵌入式处理器性能的不断提高,基于软件的压缩技术逐渐取代了基于专用视频压缩芯片的硬件压缩技术,成为了嵌入式视频监控系统的发展主流。由于基于软压缩的系统中视频数据的采集工作应尽可能少地占用处理器时间,使得处理器能将更多时间投入视频压缩算法,提高系统性能,因此视频数据采集模块效率高低、采集到的图像分辨率大小将直接关系到整个视频监控系统的效果与性能。
2 视频采集结构
2.1 模数转换
为了获得更好的通用性,本系统选取CVBS(复合电视广播信号)或者S-Video(亮色分离信号)作为视频源输入,采用性价比较高的Philips SAA7113作为视频ADC。SAA7113具有4路模拟信号输入,输出8位数字信号VP0~VP7;输出两路参考信号RTS0~RTS1,通过FC总线设置内部寄存器可分别配置成水平参考信号(HREF)、垂直参考信号(VREF)或者奇偶场同步信号,需要指出的是SAA7113输出的数字信号是以27 MHz的LLC时钟为同步信号,即每个LLC周期内有1个字节输出(下降沿有效)。我国采用的是50 Hz PAL电视信号,每秒25帧图像,每帧625行,其中576行有效(当VREF为高电平时),每行864个像素,其中720个像素有效(当HREF为高电平时),即每帧图像的实际分辨率为720×576。SAA7113按奇偶场输出,每场288有效行,每行720有效像素,视频格式按照YUV4:2:2,即每行1 440 Byte,每场405 KB,每帧810 KB。
2.2 视频缓存
由于视频数据不断地输出,如果让处理器不间断地读取数据是不现实的,必须要有适当的缓存使得处理器经过一段时间后读取缓存内的数据。SAA7113是以场为单位输出视频数据的,因此最合适的缓存大小为1场即405 KB。参考乒乓切换的思想,给出详细的缓存设计结构。
如图1所示,整个缓存结构由切换控制电路和两块8 bit 512 KB SRAM组成。奇数场时,切换控制电路将SAA7113输出的视频数据写入奇场SRAM,同时处理器将取出缓存在偶场SARM中的偶场数据;偶数场时,将SAA7113输出的视频数据写入偶场SRAM,同时处理器将取出缓存在奇场SRAM数据。切换控制电路可由标准逻辑构成,也可由CPLD或者FPGA编程实现,考虑到时序控制及成本问题,使用CPLD实现切换电路为最佳方案。
3 MAX II系列器件
Altera推出的MAX II器件系列基于突破性的新型CPLD架构,是目前业界成本最低的CPLD。MAX II器件还将成本和功耗优势引入了高密度领域,使设计者可以采用MAX II器件替代高成本或高功耗的ASSP和标准逻辑器件。
3.1 MAX II器件优点
MAX II系列器件主要有以下优点:
成本优化的架构。四倍的密度,一半的价格(和上一代MAX器件相比)。以最小化裸片面积为目标的架构,业界单个I/O引脚成本最低;
低功耗。十分之一的功耗(和3.3 V MAX器件相比)。1.8 V内核电压以减小功耗,提高可靠性。
支持内部时钟频率高达300 MHz:两倍的性能(和3.3 V MAX器件相比);
内置用户非易失性Flash存储器。通过取代分立式非易失性存储器件减少元件数;
实时在系统可编程能力(ISP)。器件在工作状态时能够下载第二个设计,降低远程现场升级的成本;
片内电压调整器支持3.3 V、2.5 V或1.8 V电源输入。减少电源电压种类,简化单板设计;
多电压提供能力和外部器件在1.5 V、1.8 V、2.5 V或3.3 V逻辑级的接口。施密特触发器、回转速率可编程以及驱动能力可编程提高了信号完整性。
Altera提供免费的Quartus II基础版软件,支持所有MAX II器件,它是基于MAX II器件引脚锁定式装配和性能优化而设计的。
3.2 EPM570T144C5
本系统采用的切换电路逻辑相对比较简单,而所需要的GPIO较多,同时为了与SRAM及处理器电压匹配,所以选用核心电压3.3 V、144引脚(其中116个GPIO)的EPM570T144C5作为实现控制电路的CPLD。
EPM570T144C5内部有570个逻辑单元(Logic Element),相当于440个宏单元(Macrocell),此前常用的EPM7128只有128个宏单元。EPM570T144C5内部分为两个I/O bank,共116个通用I/O,引脚延时为8.8ns。满足系统的设计要求。
4 具体实现
本系统选用IS61LV5128AL为缓存使用的SRAM,该器件容量为8 bit 512 KB,有8条地址线(I/O0~I/O7)、19条地址线(A0~18)、片选使能CE(低电平有效)、输出使能OE(低电平有效)、写使能WE(低电平有效)。由于两片SRAM需要一直工作,且当写有效时(WE低电平)是输出使能无效,所以CE与OE可一直保持低电平,写控制由CPLD生成。
4.1 SRAM地址线控制
写缓存的地址由LLC计数生成,但不是每个LLC都包含有效数据需要和HREF及VREF相与形成,在Quartus II中采用原理图编辑方式对SRAM地址进行控制,具体如图2所示。
图2中主要包括2个19位计数器及4个19位三态缓冲门,其中HREF/VREF由SAA7113中的RTS0/RTS1配置形成,ODD(奇场指示信号)由VREF计数2分频形成,EVEN(偶场指示信号)由ODD取反得到,这样可免去对HREF计数,然后丢弃消隐行的过程,同时得到了HREF、VREF及ODD三个参考同步信号。图中ODD_CS及EVEN_CS是由ODD及EVEN和CPU片选信号CS构成。奇数场时,偶场计数器清零,奇场计数器工作形成的地址通过缓冲门连接至奇场SRAM,同时若有CPU片选信号将会选通偶场SRAM,CPU的19位地址线将连接至偶场SRAM,偶数场时则反之。
4.2 SRAM数据控制
数据线控制电路主要由4个8位三态缓冲门组成,如图3所示。其中VP0~VP7为SAA7113的8位数据输出,其原理与地址线控制电路类似。写控制电路由2个4输入或门构成,其中nHREF及nVREF由HREF、VREF取非得到,实现只有在有效数据时才形成写使能WE。
5 系统仿真
从图4所示的Quartus II时序分析中可以看出LLC与ODD_nWE的延迟为8.8 ns,ODD_nWE与计数器生成的地址线的时间间隔为10 ns,即地址线的生成与LLC上升沿的时延为18.8 ns,由于LLC为27 MHz半个周期为18.5 ns,本系统设计正好满足SAA7113输出数据在LLC的下降沿开始有效。两片SRAM地址信号SRAM0_Add、SRAM1_Add以及SRAM写信号ODD_nWE、ENEN_nWE随着场同步信号ODD交替出现,实现了高效的乒乓切换混存结构。
6 结束语
本文采用EPM570与两片512 KB SRAM实现视频采集系统,相较于采用双口RAM、高速FIFO的缓存结构不仅价格低廉,能在时序上进行控制,还能获得720×576的实际有效分辨率,缓存效率高,占用处理器资源少。为处理器进一步进行视频压缩提供了有力的保障。