基于FPGAYUV串并分离.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGAYUV串并分离

基于FPGAYUV串并分离   摘 要:实时性与集成度的互换广泛存在于FPGA设计中,这篇文章介绍了两种基于FPGA的YUV分离的实现:基于速度和基于面积的实现。前者利用流水线的思想,基于两片双口RAM之间的乒乓操作,完成了模块的设计,后者仅用一片双口RAM串行的实现了YUV分离数据的输出。通过Verilog HDL对两种方法进行了实现,并用ModelSim完成了模块仿真。通过对比发现,二者各有优势:前者消耗硬件资源与面积较后者有很大改进,而后者对整体系统实时性的提高具有重大意义。   关键词:速度与面积;FPGA;YUV分离;双口RAM;流水线;乒乓操作      前 言   随着视频采集、压缩技术以及无线传输技术的飞速发展,它们被广泛应用到各个领域,尤其在嵌入式系统中的应用尤为突出,传统的视频技术解决方案如采用CPLD+CPU的结构进行的设计,已经不能满足人们对于集成度与实时性的要求,而FPGA恰逢其时的出现,以其高度集成,并行处理以及提供的丰富的片上资源,同时随着FPGA自身性能的不断提高,以及各个FPGA厂商为视频处理提供了越来越多的高性能解决方案,使得FPGA在视频采集压缩以及无线传输领域的应用越来越广泛。为我们进行FPGA的设计提供了广阔的平台。   本文所做的工作是基于FPGA的实时视频无线传输系统的一部分。在进入视频压缩编码器之前,需要完成视频的采集,模数转换,预处理,读写SDRAM等操作,本文针对预处理过程中的数字视频的分离存储进行了研究,即YUV的分离存储,并采用了两种方法实现了YUV的分离存储,一种是基于速度考虑的用两片双端口处理器的实现,另外一种是基于面积考虑的只用一片双端口存储器的实现。   本文包括五部分,第一部分是对系统的整体介绍,第二部分介绍了基于面积的设计实现,第三部分对基于速度的实现进行了阐述,第四部分对比分析两种实现方式的性能,第五部分则是对文章的总结。   1.基于FPGA的实时视频无线传输系统   本课题所设计系统主要由视频采集,视频压缩,无线传输三大部分组成。系统结构如下图1所示。在视频数据进入视频压缩编码器之前,视频需要经过CCD视频采集,TVP5146视频解码,有效数据抽取,预处理,SDRAM存储等操作,这些操作均属于视频采集前端系统。其中CCD完成模拟视频的采集,TVP5146完成对输入模拟视频到数字视频的转换,而在这里需要对TVP5146进行内部寄存器设置,设置通过IIC总线来完成;有效数据抽取模块完成对有效视频数据的抽取,一帧视频数据由625行分属于奇偶场的视频组成,而系统所需要的是一帧视频其中576行有效数据中的特定的像素,而这个工作就是有有效视频抽取模块完成;而预处理模块则是完成数字视频的串并转换,即8位到16位的转换,以及YUV的分离,这也是本文所做的工作,下面将做详细介绍;然后将视频存储在SDRAM中,实现了为H.264编码器提供稳定的视频流供压缩;3G模块将压缩模块送出的视频流进行RTP封装,然后发送到远端接收系统。   本文所做的研究是基于YUV分离开展的,前面已经提过面积与速度是FPGA设计不变的主题,二者也是一对矛盾体,不可能同时兼顾,在系统设计中只能通过速度和面积的互换,来使二者有机的统一起来。其中,基于面积的设计是利用一片双端口RAM,利用FPGA与SDRAM之间的频率差异来实现的,我们选定的FPGA的工作频率为48MHZ,SDRAM的工作频率为100MHZ,这样就实现了再一行视频数据的有效期完成对双端口RAM的写,然后利用一行视频数据的行消隐期完成对双口RAM的读出操作,进而实现了YUV分离输出;而另一种实现是基于速度的实现,利用两片双端口RAM进行乒乓操作,完成了数据的无缝缓存和处理。本文通过verilog实现了两种方法的设计,通过对比仿真结果,均达到了预期结果。   2.基于速度的实现   2.1乒乓操作   乒乓操作是一个用于数据流控制的处理技巧,本文利用了两片双口RAM来作为乒乓操作的数据缓冲区,乒乓操作如下图2所示。外部视频数据通过输入数据选择控制模块和输出数据选择控制模块的控制下,完成缓冲区的选择和视频数据的输入与输出,并将经过缓冲的数据流没有停顿地送到下一模块进行运算或处理,适合对数据流进行流水线式处理,能高效地完成大量实时视频数据的无缝缓冲和处理。在第一个缓存周期,同样称之为双口RAM0的写周期,视频数据在双口RAM控制器控制下选择将视频数据输入到双口RAM0;在下一个周期,输入控制模块将视频数据输入到双口RAM1,同时输出控制模块输出双口RAM0的视频数据到后续模块进行处理;第三个周期,在输入控制模块的控制下,将输入视频数据输入到双口RAM0,同时在输出控制模块控制下,将双口RAM1中存储数据输出到后续模块

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档