关 闭

新闻中心

EEPW首页>安全与国防>设计应用> 如何用FPGA构建IP监视摄像机的参考设计

如何用FPGA构建IP监视摄像机的参考设计

作者: 时间:2012-09-24 来源:网络 收藏

目前的视频监视市场在发展过程中遇到了很多要解决的难题,包括从模拟到数字摄像机的过渡、转换到高清(HD)视频、应用宽动态范围(WDR)传感器,以及实现进行数据传输和控制的互联网协议(IP)链接等。针对这些问题,本文介绍了如何采用FPGA构建IP监视摄像机的参考设计,展示了怎样采用低成本AlteraCycloneIIIFPGA构建完整的系统。

引言

在视频监视市场领域,对更高质量视频、高分辨率以及灵活性和功能的需求促进了从模拟到数字摄像机的过渡。在定义上,高清(HD)视频必须是数字的,因此,采用HD标准也就意味着过渡到数字传感器。HD视频标准支持更高的帧速率和分辨率,需要H.264等新压缩方法,促使摄像机具有更强的处理能力。

在各种照明条件(强光和暗光、强对比度)下都要求能够提取出所有图像内容,因此,数字摄像机采用了新一类WDR传感器,摄像机也要求在数字域中实现动态范围压缩。摄像机中数字数据通路的另一优点是可以在摄像机内部进行“分析”处理。

IP监视摄像机参考设计

IP监视摄像机参考设计的顶层结构图和硬件,它主要面向新一代HD(>1MP)WDR传感器。IP监视摄像机参考设计结合了Altera以及多家合作伙伴的硬件和软件知识产权。图1.IP监视摄像机参考设计结构图。

参考设计的硬件平台,基于CycloneIIIEP3C120开发板。AptinaWDR传感器像素数据被送入Apical的图像传感器流水线(ISP)。输出数据是YUV4:2:0格式,写入到外部DDR2SDRAM的帧缓冲中,它使用了Altera视频和图像处理(VIP)套装提供的组件。然后,使用EyeLytics提供的内核,以H.264格式对视频数据进行编码,支持(在这一应用中)3级基线/主要类视频流,通过以太网在远程主机上观看。散射收集直接存储器访问(SGDMA)控制器支持Altera三速以太网(TSE)MegaCore?功能,将编码后的视频流通过以太网传送到远程客户端。图2.IP监视摄像机参考设计硬件

宽动态范围传感器

AptinaMT9M033是0.33"720p60WDRCMOS传感器,主要用于监视摄像机市场。传感器和镜头组合安装在“顶板”上,通过I/O转换板将其连接至CycloneIIIEP3C120开发板。图像传感器流水线CMOSWDR传感器没有片内图像流水线处理功能,以RAW/Bayer格式输出图像数据,每像素为20比特。可以采用下式来计算传感器输出的大量原始数据:20比特/像素x(1280x720)像素/帧x60帧/s=>1Gbit/s由于数据量过大,因此,很难将新一代WDR传感器连接至监视解决方案中经常使用的ASSP。因此,FPGA是高效处理数据的理想选择。Apical的ISP包括以下功能:

■去除热点像素,抑制噪声(提供空间和时域IP内核)。

■使用Apical获奖的专利IridixIP内核实现单位像素高级色调映射功能

■高级去马赛克和颜色校正

ISP输出可以作为参考设计的一个选项,通过BitecDVI输出电路板连接至CycloneEP3C120开发板的第二个HSMC连接器(显示在图2的左侧硬件中)。

视频和图像处理套装

AlteraVIP套装汇集了MegaCore功能,设计人员可以利用它方便的开发定制视频和图像处理设计。VIP套装含有MegaCore功能,从颜色空间转换等简单的构建模块功能到可编程多相缩放等复杂的视频缩放功能。这些功能适合用在多种图像处理和显示应用中,例如视频监视、广播、视频会议、医疗和军事成像等。

在IP监视摄像机参考设计中,采用了多种VIP内核进行颜色空间转换,采用色度重新采样功能将ISP的RGB编码视频转换为H.264编码器要求的YUV4:2:0编码输入。如图5所示,内核连接至应用了Avalon-ST视频协议的Avalon?流(Avalon-ST)接口。使用Avalon存储器映射(Avalon-MM)接口,Y和C视频分量被写入外部DDR2存储器的帧缓冲。

在H.264编码之前,跳过视频间隔帧,在帧缓冲写入器中,720p60传感器帧速率被转换为720p30,而不是将其写入帧缓冲中。

视频压缩

该设计中使用的H.264编码器是EyeLytics公司提供的IP内核,它针对监视应用进行了优化。这一内核具有很多监视功能,包括多通道支持、恒定质量速率控制、帧内/帧间模式、QPEL、前后关系自适应二进制算法编码(CABAC)/前后关系自适应长度可变编码(CAVLC),并且使用了较少的逻辑门。内核同时支持主要类和基线类。

三速以太网MAC

AlteraTSEMegaCore功能结合了10-/100-/1000-Mbps以太网介质访问控制器(MAC)和1000BASE-X物理编码子层(PCS),以及可选物理介质附加子层(PMA)。CycloneIIIEP3C120开发板包括10/100/1000base-T和自动协商以太网PHY,其简化千兆位介质无关接口(RGMII)连接至TSE功能。

Avalon总线架构和DDR2帧缓冲存储器采用了一块具有150MHz32位数据总线的外部DDR2SDRAM,由AlteraDDR和DDR2SDRAM高性能II控制器MegaCore功能对其进行控制,它用于应用程序代码和数据存储、输入和输出帧缓冲以及H.264编码器的中间帧缓冲。为达到时序和性能目标,Avalon-MM总线架构是75MHz128位宽。Avalon仲裁共享功能应用于连接DDR2存储器控制器的每一Avalon-MM总线主机,以保证不中断的高效访问H.264编码器的突发数据。整个系统采用了时钟交叉桥接、定时器和并行I/O等多种标准Avalon组件。

工具流

使用AlteraSOPCBuilder工具,以完整的芯片系统(SOC)来实现IP监视摄像机参考设计。使用SOPCBuilder,设计人员在GUI中设定系统组件,由SOPCBuilder自动产生互联逻辑。SOPCBuilder产生定义系统中所有组件的HDL文件,然后,顶层HDL文件将所有组件连接起来。在VerilogHDL中生成IP监视摄像机参考设计,而SOPCBuilder能够同时生成VerilogHDL和VHDL。

ISP和H.264编码器可以是具有Avalon-MM接口的SOPCBuilder组件,易于集成到Altera具有标准外设的系统中,以及第三方IP和设计人员自己的组件构成的系统中。SOPCBuilder含在AlteraQuartus?II开发软件中,提供了全面的多平台设计环境,很容易满足特殊的设计需求。QuartusII软件为FPGA和CPLD设计的所有阶段提供解决方案:

■设计输入

■综合

■布局布线

■时序分析

■仿真

■编程和配置

使用AlteraNios?II嵌入式设计套装进行软件开发。基于SOPCBuilder设计中的组件,生成电路板支持包(BSP),包括所有必须的器件驱动程序等。

软件应用

采用NiosII嵌入式处理器来设置不同模块中的各种寄存器,同时运行RTP堆栈,传送压缩视频。采用以太网MAC模块来控制ISP,嵌入式处理器运行Micrium的uC/OSII实时内核、InterNiche技术公司的NicheStack和RTP堆栈,以及Altera参考设计的视频流应用程序和网络服务器应用程序。处理器还处理ISP的自动曝光和自动白平衡控制功能。

视频流应用程序响应H.264编码器的中断,重新装入各种缓冲指针。重新装入功能使其能够准备要编码的下一视频帧,将刚刚编码后的帧通过以太网传送至RTP堆栈,以便继续传输。通过网络服务器应用程序,支持ISP进行简单的控制,使传感器在正常和WDR模式之间切换,使能和禁止Iridix。这种控制功能具有实时显示ISP的优势。网络服务器应用程序还支持对编码器进行配置,包括比特率和质量等,在CABAC和CAVLC之间进行选择。

主机软件

运行VLC媒体播放器(或者类似的)的主机PC用于查看IP监视摄像机参考设计的流视频输出。如图7所示,主机和EP3C120开发套件之间需要的唯一链接是以太网电缆。

性能:IP监视摄像机参考设计的性能指标包括速度、延时、功耗和资源利用率。

速度:在CycloneIIIEP3C120I7开发板上实现参考设计时,DDR时钟频率为150MHz,足以使用H.264基线类或者主要类来压缩720p30视频帧。Avalon-MM总线架构运行在75MHz,H.264编码器内核运行在150MHz。DDR2存储器控制器、Avalon-MM总线架构以及H.264内核通过同步半速率桥接进行连接,以减小时钟域之间的延时。NiosII处理器和TSE的时钟为125MHz。采用了NiosII/F(快速)版的NiosII处理器,具有8-Kbyte指令高速缓存、8-Kbyte数据高速缓存,并且支持浮点。


延时:从传感器输入到ISP,直至H.264编码器输出的延时小于两帧,它主要来自图像数据的双缓冲。在对以前的帧进行编码时总是将新输入帧写入存储器。

功耗:参考设计总功耗包括所有的辅助模块和I/O的功耗,达到2.7W。表1显示了参考设计中使用的每一主要模块的功耗。其余的700mW来自Avalon总线架构、颜色空间转换和参考设计的I/O附件。

资源利用率:在CycloneEP3C120中实现整个参考设计时,其资源利用率为:

■107K逻辑单元(LE)(90%器件利用率)■410M9K嵌入式存储器(95%器件利用率)■140个嵌入式乘法器9位单元(24%器件利用率)

灵活性

基于FPGA的体系结构非常灵活,可以进行定制,完全能够在大家都了解的标准硬件平台上实现。通过这种灵活性,可以增强和修改系统体系结构,以适应不同的系统需求。由于采用了标准HDL来实现设计,因此,很容易提高摄像机分辨率,增加定制视频处理功能或者视频分析引擎。而且,还可以通过以太网进行远程更新。例如,把新的FPGA编程文件发送至NiosII嵌入式处理器,然后将文件写入闪存,从而重新配置系统或者改变传感器和ISP设置。在单片FPGA中集成整个IP监视摄像机参考设计减少了芯片数量,节省了PCB空间。

不需要与外部器件进行通信,从而减少了I/O链接,降低了动态功耗,解决了散热问题。针对个性化需求,使用不同的FPGA图像(例如,分辨率、帧速率和压缩选项),在一个系统设计中便能够支持多种个性化摄像机。通过纵向移植,可以在同一封装中使用不同逻辑密度的器件。而且,设计可以在任意FPGA上实现,采用开放设计方案使设计人员能够针对最新的FPGA进行设计,有了更新的FPGA系列后,可以进一步提高性能,降低成本和功耗。

结论

Altera的CycloneIII和CycloneIV系列低成本FPGA解决了目前最新IP监视系统设计人员所面临的难题。通过IP监视摄像机参考设计,Altera及其合作伙伴提供了从图像采集到IP包封的全面解决方案,使用集成在AlteraSOPCBuilder工具中的系列MegaCore功能来提供灵活的解决方案,促使产品及时面市。



评论


相关推荐

技术专区

关闭