基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx

上传人:lao****ou 文档编号:841680 上传时间:2024-06-17 格式:DOCX 页数:6 大小:85.89KB
下载 相关 举报
基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx_第1页
第1页 / 共6页
基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx_第2页
第2页 / 共6页
基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx_第3页
第3页 / 共6页
基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx_第4页
第4页 / 共6页
基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx》由会员分享,可在线阅读,更多相关《基于EP2c35 FPGA和NiosII 软核实现视频监控系统的设计.docx(6页珍藏版)》请在第一文库网上搜索。

1、基于EP2c35FPGA和NiOS11软核实现视频监控系统的设计随着视频监控系统的广泛应用,人们对监控系统的实时性提出了更高的要求,特别是在数据的高速采集应用中,传统技术在处理速度上面临着严峻的考验,当前通用的解决方案很难满足用户日益提高的需求。为此,Ahera公司于2006年4月7口提出了C2H技术。这个技术的实质是通过便性映射的方式直接用硬件对C语言进行加速,获得系统性能的提高。本文将C2H技术应用于视频监控系统的数据存储功能部分,有效的加快了数据的读写速度,使系统的性能得到大幅度的提升。1 C2H技术介绍1.1 C2H的特点C2H是一种可以直接对ANS1C函数定制硬件加速的技术,在推出短

2、短的一年时间内就得到了嵌入式及FPGA设计者的广泛使用。C2H编译器能分析程序要加速实现的存储器接旦类型,生成硬件加速器逻辑以及合适的AVaIOr1(总线互联架构)的主机和从机接口,达到与存储器延时的匹配。这样,分担了处理迷的数据计算和存储器访问任务,使处理器能够更好的处理其他任务。数据表明,与未采用C2H加速的系统相比,采用NiI1C2H编译器加速的系统性能提高了10到45倍,而耗费的逻辑资源仅比处理器本身多出0.7至2.0倍。NiosIIC2H编译器是基于ECIiPSe的NioSI1集成开发环境(IDE)中的一个插件。同时,C2H编译器具有识别并行运行事件的功能,能在硬件中同时运行相互独立

3、的事件。与前面结果无关的事件将被尽早的执行。软件调用以线程的方式进行加速一一每个加速器完全并行运行,真正的多任务系统(迎,硬件加速器)。1.2 C2H的使用流程C2H的使用需要进行反复的调试,直到性能符合设计要求。具体流程如下:(1)在NioSI1中开发和调试C程序;(2)分析C程序,找到最适合加速的部分;(3)将需要加速的代码段写成一个独立的子函数;(4)指定这个函数为硬件加速的函数;(5)在NioSI1IDE中重新编译整个工程;(6)分析硬件加速的结果,观察C2H*估报告;2视频监控系统的设计设计中选用的是A1tera公司生产的CyCIOneI1系列中的EP2c35FPGAoCyc1one

4、II系列是低成本嵌入式处理解决方案,具有可以扩展外设集、存储器、I/O的特点。同时A1tera公司免费提供NioS11嵌入式处理器。NiosII软核是一个32位巫区嵌入式处理器,性能超过200MIPS,满足当前系统的设计要求。A1tera公司提供了一整套针对NioS11软核的SoPC开发工具,轻松实现从底层的硬件设计到上层的软件开发。2.1视频监控系统的总体设计本文中设计的视频监控系统的基本构成是现场实时采集图像的摄像机、视频解码芯片AD7181B、视频D/A芯片些7123、VGA控制器、F1ash、SDRAM控制器及控制核心NioS1KPU。整个系统除A/D和D/A采用专用芯片外,其余部分均

5、在FPGA上实现。视频监控系统的硬件设计框图如下图1所示:图1系统硬件设计框图各模块功能描述如下:NiosII软核CPU是32位的R1SC嵌入式处理器,为整个系统的中枢;SDRAM,是系统大容量的数据缓冲存储区域;F1ash,存储系统的硬件和软件的系统上电配置数据;视频处理模块,实现对视频流的ITU656解码、去隔行、格式转换等功能。2.2C2H在视频监控系统的应用下图1.2详细表示出了系统中视频数据流的处理过程。12CJW配元锁不腌测U-R656解码延时时钟视顺解码芯片7181BYUV45)V数据仃效;视烦缓存VGAYVGA控制视场DA芯片DAbI2380.图2视频数据流处理过程图从上图2可

6、以看出,数据流处理过程是先经过视频解码芯片AD7181B的模数转换,变成8位的数字视频信号;再由ITU-R656解码器解码,使视频格式变成YUV4:2:2;然后对视频流进行去隔行处理。去隔行处理中,需要将奇场数据和偶场数据分别存于两个FIFO(FIFOA和F1FOB)中,然后再以两倍的频率按ABABA的顺序读出,便可完成视频的去隔行处理。最后经过YUV到RGB时域变换,便可在VGA控制器的控制下在显示器上进行显示。由于视频解码A/D和视频D/A是由专用的芯片完成,速度很快,未对系统的速度有太大影响。经过分析比较,系统性能提升的瓶颈是数据中间处理中的数据读写等环节。由于涉及到从存储器读数和写数,

7、使这部分成为系统中最耗时的部分。所以提高系统性能的关键是从减少数据读写的时间耗费入手。本设计中针对这一点,采用C2H技术,对数据的读写进行硬件加速。进行加速部分程序如下:intc2h_acce1eration(int*dest_ptiint*source_ptint1ength)iti;for(i=0:i(1ength/4):i)*dest_ptr+=*sou,ce-ptr+:)其中,dest_ptr是数据目的地址,source_ptr是数据原地址,1ength是字节数,测试中Iength取1048576个字节长。实现过程按照论文1.2节所述。首先,经过对时耗的分析比较,确定耗时最多的部分是数

8、据读写部分。因此,确定这个环节为加速对象,并将其编写为独立的子函数,即上述的c2h江CCICraIiorI函数,然后在IDE中直接选择以上函数,点击右键,选择HardWareACCe1eratiOn,最后再重新生成系统并编译整个工程。3结果分析比较为了进行加速性能比较,在系统中又定义了一个与c2h_acce1eration功能相同的函数:software_acce1eration,然后对函数c2h_acce1eration进行C2H加速。并将结果与未采用C2H加速的software_acce1eration比较。定义了测试函数,部分代码如下:sofhvare_start_time=a1t_nt

9、icks();/取此刻系统时间作为开始时间sofhvare_acce1eration(de$t_ptr.source_ptr.1048576);softvaie_finish_time=a1t_nticks():取此刻系统时间作为结束时间sofhvare_tota1_time=(sofhvare_finish_tiine-SoftWaie_start_time)*1000)a1t_ticksjper_second():计算未加速函数完成整个处理过程的时耗,printf(Tota1time:%dms,sofhvare_tota1_time);c2h_start_time=a1tnticksO:c

10、2h_acce1eration(dest_ptr.souice_pti1048576):c2h_finish_time=a1tnticks();c2h_tota1_time=(c2h_finish_time-c2h_start_time)*1000)a1t_ticks_pei计算加速函数完成整个处理过程的时耗,单位为msprintf(Tota1time:%dmsn.c2htota1time):编译运行后,分析硬件加速的结果,观察C2H*估报告,可以清楚的从运行结果看出通过C2H加速后性能的提高。未进行C2H加速的函数读写1048576字节的运行结果如下图3所示,经过C2H加速的函数运行结果如下

11、图4所示。fromThicCimp1eprograncopiec1043576byteoofdataasourcebuffertoadestinationbuffer.Thpprogramorns100iterationsotthcopyoperation,andca1cu1atesthet1naespent.CopyfceginnmgSUCCESS!Sourceanddestinationdatamatch.Copyverified.Tota1time:86520ns图3未进行C2H加速测试结果Thissimp1eprogramcopies1048576bytesofdatafromasou

12、rcebuffertoadestinationbuffer.Theprogramperforins100iterationsofthecopyoperacion1andca1cu1atestetimecpent.copybeginningSUCCESS;Sourceanddestinationdatamatch.Copyverified.Tota1time:7470ms图4C2H加速后的测试结果从图3和图4的结果可以看出来,软件实现读写1048576字节数据需要86520ms;经过C2H硬件加速后耗时减小至7470ms,速度提升多达11倍。4结论本文介绍了一个在A1tera公司提供的EP2c35FPGA上设计的视频监控系统。本文作者创新点:在视频监控系统中应用C2H技术对数据读写环节进行加速,使数据的读写速度提高了11倍,提升了整个系统的性能。本文的设计方法和实现技术适合在对数据处理实时性要求较高的视频之星中应用,有很大的实用价值。责任gt

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服