论文部分内容阅读
随着数字视频处理技术和网络通信技术的迅速发展以及移动智能终端的普及,人们对视频形式的多媒体业务的需求不断增长。然而,数字视频信号的数据量极大,占用大量的存储空间和传输带宽,为此,国际标准化组织(ISO)和国际电信联盟(ITU)陆续提出了多种数字视频压缩标准。其中,JPEG2000压缩标准凭借优异的特性在移动通信和IP网的视频传输中得到广泛应用。JPEG2000编解码器拥有优异特性的同时,实现却很复杂,已成为影响视频传输系统实时性的关键因素。SOPC是基于FPGA的单片高性能嵌入式系统,具有软硬件皆可编程的特点,可将复杂的算法使用硬件加速实现,能够有效改善系统的实时性能。本文在研究了JPEG2000编码算法和SOPC设计技术的基础上,完成了视频传输系统的软硬件设计以及在Zynq7000平台上的实现。论文的主要内容包括如下几个方面:(1)研究了SOPC软硬件协同设计技术,同时针对Zynq7000平台深入学习了Xilinx提供的设计方法、开发工具和设计流程,然后根据系统要求,完成了视频传输系统的软硬件划分和总体架构设计;(2)研究了可重用IP核设计技术,同时重点学习了JPEG2000编码器的接口、AXI4总线协议和AXI-Datamover的使用方法,完成了可重用jp2k_core核的设计与实现;(3)根据软硬件划分结果,分析了硬件系统实现的功能和软硬件接口,完成了硬件系统架构设计,然后基于Vivado IDE实现了硬件系统;(4)根据软硬件划分结果,分析了软件系统实现的功能和软硬件接口,完成了软件系统架构设计。然后,针对软件系统功能模块,分别实现了Zynq7000平台的Linux移植、基于V4L2规范的视频采集程序设计、基于Socket接口的网络数据传输程序设计、基于Misc驱动模型的jp2k_core模块的内核驱动设计和JPEG2000编码的控制程序设计:(5)分析了JPEG2000压缩噪声中分片效应的产生原因,提出了基于前后向滤波的消除方法,并在软件中实现;(6)研究了Linux系统多进程与多线程程序设计方法,在软件功能模块实现的基础上,根据模块性能进行了线程划分,最后完成了视频传输系统的软件设计与实现。在视频传输系统的软硬件实现后,使用ZC702评估板对系统进行了软硬件协同测试,测试结果显示视频传输系统能够正常工作,且可以有效消除分片效应的影响,同时兼有很好的实时性。