以DSP和FPGA协同技术设计实现的高性能视频编码器视频采集设计.docx
《以DSP和FPGA协同技术设计实现的高性能视频编码器视频采集设计.docx》由会员分享,可在线阅读,更多相关《以DSP和FPGA协同技术设计实现的高性能视频编码器视频采集设计.docx(6页珍藏版)》请在第一文库网上搜索。
1、以DSP和FPGA协同技术设计实现的高性能视频编码器视频采集设计采用空和但协同技术设计实现了一个高性能的MPEG24视频编码器。FPGA模块完成视频采集、YUV分离、数据I/O等功能,而使用DSP专一进行视频压缩编码。针对DSP片内资源特点设计了片内存储器数据分配方案,并根据该方案优化了MPEG24视频压缩的数据流模式。提出了基于宏块空间复杂度的宏块类型判断算法,有效地降低了视频压缩算法的计算复杂度。测试结果表明,采用MPEG24视频标准该视频编码器每秒能够压缩3912帧C1F图像。随着宽带Internet的快速发展和电壬设备计算能力的迅速提高,在Internet上实时传输高清晰度视频信息成为
2、可能,以Internet为传输媒介的视频会议、视频监控、Internet电视台等视频应用方兴未艾。这些应用的一个共同特点是,都需要一个高性能的实时视频编码器,特别是高分辨率的视频应用给视频编码器的计算能力提出了很高的要求。例如,一幅720X576的4:2:2视频格式的画面,包含有3240个16X16的YUV宏块(MacroB1ock,即MB)o如果该视频帧按照P帧或者B帧进行压缩,那么每一个YUV宏块都要进行运动估计、运动补偿、DCT(DiscreteCosineTransform)/反DeT变换、量化/反量化和V1C(Variab1e1engthCoding)等环节的运算。如果进行实时压缩(
3、每秒钟压缩25帧)的话,大致需要3165GIPS(Instructionpersecond)的计算能力。目前,单一的里/DSP一般还不具备这样的计算能力。为了解决高清晰画面的实时视频压缩问题,本文提出了DSP和FPGA(Fie1dPro-grammab1eGateArray)协同设计方案。使用FPYA完成视频采集、YUV(蔽美度丫、色度分量UV)分离、数据I/0(Input/Output)等所有周边功能,使用高性能的DSP进行视频压缩编码,因而在视频编码器内DSP和FPGA能够进行流水操作,有效地提高了编码器的性能。为了降低算法的计算复杂度,本文提出了基于宏块空间复杂度的宏块编码类型判别算法(
4、MTJBSC)o在标准MPEG24视频运动估计算法中,判别宏块的编码类型是通过计算当前宏块内像素值方差和参考宏块与当前宏块之间的方差来实现的,因此计算量很大。MTJBSC算法首先计算出当前宏块的空间负责度(MBC),然后通过比较当前宏块的MBC与SAD(SumofAbso1uteDifference)值来判断当前宏块的编码类型,大大降低了算法的计算复杂度。1 硬件设计方案基于T1公司的图像开发工具包(ImagingDeve1operKit,即IDK)架构,设计了视频编码器的硬件平台。从整体上来讲,视频编码器的硬件实现由DSP和FPGA两个模块组成,其逻辑框图如图1所示。由于视频压缩编码计算量很
5、大,为了尽可能提高视频压缩帧率,由DSP专门负责视频压缩编码,而视频采集、YUV转换和编码器I/0接且等其它功能则交由FPGA模块来实现。图1锐席编吗器功能。,D7GmFig.1VideOencoderfunction卜乙也即&如图1所示,用户控制命令(例如视频压缩模式)由FPGA模块首先截获,然后FPGA模块向DSP模块产生外部中断,DSP在响应中断时读取存储在FPGA中的用户控制命令字,然后DSP解析命令字,并根据用户要求的视频格式、帧图像分辨率和视频压缩码流速率进行视频压缩编码。模拟视频信号经视频解码器转换为裸视频数据流,该数据流(或从数字摄像机直接获得的数据流)经FPGA预处理后送入帧
6、存中。DSP读取帧存中的数据进行压缩编码,压缩后的视频数据送入F1FO中,最后FIFO中的数据通过串口送给信道编码器。FPGA模块的逻辑框图见图2O如图2所示,视频解码器首先将模拟视频信号量化为复合的YUV数据,然后经FPGA进行YUV分离(和滤波)后送到帧存(图1中的2RAM1)中,C6201使用D幽通道(异步方式)通过FPGA读取帧存中的YUV数据进行压缩编码。帧存(SDRAM1)在刷新(refresh)或缺页(Pagemiss)时会引起DMA读等待,为了平滑这种等待引起的DMA读数据的抖动,设计时在FPGA的内部实现了一个高速FIFO。视频帧存采用了乒乓结构,将8M字节SDRAM分为两个
7、4M字节的地址空间(每一个地址空间可以容纳一帧YUV视频数据(720576115字节),一个地址空间用于存储当前正在采集的视频数据,另一个地址空间用于DSP的数据读取。在压缩CCIR601格式的视频图像(每秒25帧)时,由于DSP的处理速度(大约每秒10帧)慢于视频采集的速度,所以FPGA模块在采集完一帧数据进入等待状态,直到DSP压缩完上一帧视频数据时,这2个地址空间才进行互换。Rg.2iFPa模於仃细功ZwFPeAIuodUkAmcuonb1ock/n:匚DSP模块接收FPGA模块送过来的YUV视频数据,然后进行视频压缩编码,最后将压缩的码流再转交给FPGA模块,由FPGA模数据发送出去。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP FPGA 协同 技术设计 实现 性能 视频 编码器 采集 设计
