motionjpeg视频压缩ip核的设计与实现

motionjpeg视频压缩ip核的设计与实现

ID:31726534

大小:383.10 KB

页数:17页

时间:2019-01-17

motionjpeg视频压缩ip核的设计与实现_第1页
motionjpeg视频压缩ip核的设计与实现_第2页
motionjpeg视频压缩ip核的设计与实现_第3页
motionjpeg视频压缩ip核的设计与实现_第4页
motionjpeg视频压缩ip核的设计与实现_第5页
资源描述:

《motionjpeg视频压缩ip核的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、MotionJPEG视频压缩IP核的设计与实现2008-06-2314:22:40作者:李大舟来源:中电网引言随着多媒体技术及通信技术的快速发展,在嵌入式平台上实现连续图像压缩的需求已变得日益广泛。常用的系统结构是独立处理器配和专用图像压缩芯片或者是只用一个高主频的数字信号处理器完成主要功能。但随着大规模集成电路技术的发展及市场对产品低成本的要求不断提高,一种新的在嵌入式平台上实现连续图像压缩的系统结构正逐步成为上述两种系统结构的替代者。这种新的结构就是Altera公司提出的基于Avalon总线的SOPC结构。SOPC结构可以把处理器,图像压缩IP核,通讯单元及控制单元集成

2、到--块FPGA芯片上。较之以往的结构,不但极大地节约了系统资源和成本,更是减少了系统的复杂度。尤其是可以用硬件电路实现软件处理极为耗吋的运算功能,使得在低主频,低功耗的嵌入式平台上实现连续图像实吋压缩变为可能。连续图像压缩IP核也成为整个SOPC系统的一个关键部件。现有的MPEG系列,H26X系列IP核对FPGA的芯片资源及性能要求极高,难以满足系统对低成本,低功耗的要求。所以设计一个适合低成本,低功耗的FPGA芯片的视频压缩IP核变得极为重要。这即要求压缩算法的复杂度不能太高,又要求有适当的压缩效果,MotionJPEG算法恰好满足上述要求。1.MotionJPEG压缩

3、算法简介MotionJPEG是一种基于静态图像JPEG压缩标准的动态图像压缩标准,压缩吋将连续图像的每一个帧视为一幅静止图像进行压缩,从而可以生成序列化运动图像。压缩吋不对帧间的时间冗余进行压缩,虽然降低了压缩比,但也同时降低了复杂度,易于硬件电路实现。MotionJPEG标准所根据的算法是基于离散余眩变换和嫡编码,关键技术有二维离散余眩变换、量化、差分编码、霍夫曼编码和游程编码等。单帧的处理过程如下图所示。Sourceitxage13"dai*TaUtT^Ue2」P核的结构设计2.1二维离散余弦变换模块二维离散余弦变换是由一维离散余弦变换衍生而來的,所以可以用两个级联的一

4、维离散余弦变换实现。实现时要注意笫一级一维离散余弦变换模块产牛.的结果不能直接作为笫二级一维离散余弦变换模块的输入量,而是等到第一级一维离散余弦变换模块产生的结果形成一个88的矩阵后,对这个88的矩阵做转置处理,再把转置后得到的矩阵按行扫描的顺序输出,这时输出的数据才能作为第二级一维离散余弦变换模块的输入量。二维离散余弦变换模块处理的对象是88的像素矩阵,来口其前一级模块预处理模块。预处理模块一个时钟周期只能输出一个数据,为了满足二维离散余弦变换模块中第一级一维离散余弦变换模块一次运算需要8个输入数据的要求,利用一个串行转并行模块,把每个时钟周期内预处理模块输出的一个数据缓

5、存起来,当数据凑满8个后再一次传给二维离散余弦变换模块。二维离散余眩变换模块输出的数据是88的二维离散余眩系数矩阵,传递给其后一级模块量化模块。量化模块一个时钟周期只能接收一个数据,为了满足二维离散余弦变换模块中第二级一维离散余眩变换模块一次运算产生8个输出数据的条件,使用一个并行转串行模块,把每隔8个时钟周期二维离散余眩变换模块输出一次的8个数据缓存起来,在等待下一次二维离散余眩变换模块输出数据的8个时钟周期的等待隔内,把数据串行传给量化模块。2・1.1第一级一维离散余弦变换模块根据一维离散余眩变换的定义和cos函数的互补对称性,参考WeipingLi提出的SkewCir

6、cularConvolution的概念,能够使-维离散余眩变换达到非常精简的硬件架构。但是考虑到处理的对像是连续帧这个条件,速度就成为主要因素,因此没有完全依照其提出的方法,而是适当的增加电路血积来够造新的11阶全流水线结构,从而获得最大的运算速度。处理过程可划分为4个阶段。阶段仁消耗3个时钟周期,完成8位有符号数的加减运算,结果为9位有符号数。阶段2:消耗2个吋钟周期,完成9位有符号数的固定系数乘法,因为乘的系数是小数,所以要把小数转换为二进制表示。阶段2中的乘法操作是用EP2C35芯片中的28个嵌入式乘法单元实现的。EP2C35芯片中共有70个嵌入式乘法单元,一个嵌入式

7、乘法单元可以实现两个9位数的乘法,两个嵌入式乘法单元并联可以实现两个大于9位小于18位数的乘法。根据这一特性,假如在阶段1中实现乘法会因输入量是8位而浪费了一个嵌入式乘法单元的全部能力,假如在阶段3或阶段4中实现乘法又会因输入量或系数中每个元素的长度大于9位而耗用两个嵌入式乘法单元去完成一个乘法操作,又很不经济。所以在阶段2中实现乘法操作是最为合理的,阶段2的输入量为9位,恰好耗用一个个嵌入式乘法单元。这也同时要求乘法小的固定系数的位数为9位,位数的过多或过少都不能充分利用芯片上的硬件资源。阶段3:消耗3个时钟周期

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。