在定点DSP进行MP3音频解码时优化内存空间的方法技术

技术编号:4333174 阅读:293 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种在定点DSP进行MP3音频解码时优化内存空间的方法,包括:静态内存的优化,主要指对于霍夫曼解码模块、改进型逆离散余弦变换模块和子带合成滤波器模块涉及的静态数据进行优化和缩减空间占用率,并且不会引进误差;动态空间的优化,主要指对于音频解码数据流进行动态更新,并且进行浮点转定点的运算节省内存空间;将中间数据使用DMA机制存入外存,提高内存空间利用率。本发明专利技术对DSP的内存空间使用进行优化分配,比其他解码方法节省了更多的内存空间,并且提高了解码效率。

【技术实现步骤摘要】

本专利技术涉及基于16位定点DSP的MP3音频解码算法实现,尤其涉及一种在定点数 字信号处理器(DSP)进行MP3音频解码时优化内存空间的方法,对一些复杂算法进行优化 和合理分配内存空间,提高解码速度的同时降低内存占用率。
技术介绍
活动图像专家小组(MPEG)是IS0/IEC的一个工作小组,负责制定有关活动图像、 音频及其组合的压縮、解压縮处理等方面的技术标准。MPEG-1LAYER3 (MP3)是MPEG-1国 际标准音频(ISO/IEC 11172)第三层编码/解码算法,它具有压縮比高,可达l : 10 1 : 12、声音还原质量好、算法复杂度适中等优点。利用这种标准制作的MP3格式音乐在数 字音频的存储、互联网上的多媒体音视频传输等领域得到了广泛的应用。因此,便携式MP3 播放器等消费类电子产品也有极大的市场前景。 当前市场的MP3播放器大都基于专用集成电路(ASIC)实现,因此存在功能单一、 灵活性不够的特点,对于满足消费者对产品新功能、多功能等体验有很大的局限。因此基于 定点数字信号处理器(DSP)的MP3音频解码的研究和实现成为满足这一需求的快捷方案。 基于定点DSP的音频解码研究和算法实现主要在两个方面受到限制,即解码速率 和内存空间的占用率。解码速率体现在解码音频的实时性和连贯性,如果解码速率与音乐 数据流不同步,则会严重影响音乐的听觉效果。内存空间占用率主要指在解码过程中,一些 中间数据的存储以及空间的及时释放和再利用。当前基于定点DSP的MP3解码实现主要侧 重于解码速率的优化,虽然在一定程度上简化了解码指令,提高了解码速率,但却以占用更 多的内存资源为代价。对于有限的DSP内存资源来说,就无法进行更多功能的扩展实现。 因此,在尽可能提高MP3音频解码速率的同时,也对内存空间占用情况进行优化 和再利用,是技术发展的必然需要。
技术实现思路
( — )要解决的技术问题 有鉴于此,本专利技术的主要目的在于提供一种在定点数字信号处理器(DSP)进行 MP3音频解码时优化内存空间的方法,以解决在定点DSP芯片进行MP3音频解码实现过程 中,对于DSP内存空间占用量过高的情况进行优化。 ( 二 )技术方案 为了达到以上目的,本专利技术采用如下技术方案 —种在定点DSP进行MP3音频解码时优化内存空间的方法,其中,定点DSP进行 MP3音频解码包括音频编码数据读入缓存、读头信息,提取主数据、解码比例因子、解码霍 夫曼数据、反量化采样、立体声处理、频谱重新排序、混迭信号消除、改进型反离散余旋变换 和子带合成滤波器;其特征在于,该方法包括 将反量化采样、立体声处理、改进型反离散余弦变换和子带合成滤波器步骤中涉3及的浮点运算转换为定点运算;以及 将实时解码产生的中间数据采用DSP的直接内存访问机制进行数据搬运,存入到 外部存储器。 上述方案中,该方法进一步包括在解码霍夫曼数据的步骤中采用16bit空间混 用部分代码,将每个二维数组用一个16位的地址空间来保存。 上述方案中,该方法进一步包括在改进型反离散余旋变换和子带合成滤波器的 步骤中,对正弦余弦进行查表运算,根据余弦对称性将查表空间由144个降到18个;根据正 弦对称性以及实际解码需要,可将查找表空间由144个降到60个;窗函数也可采用查找表 法由2048个空间降到496个空间。 上述方案中,该方法进一步包括对于动态存储空间采用縮减音频编码数据流缓 存,在解码速度和缓存块大小之间进行折中。 上述方案中,所述在解码速度和缓存块大小之间进行折中时,采用256的动态内存空间存放原始数据流。(三)有益效果 针对解码实际流程的需要,将各类数据分别存放于静态内存空间或动态内存空 间,再针对具体数据特征对各内存空间占用率进行合理优化和分配,从而大大节省了内存 空间资源。附图说明 图1是MP3音频解码流程图; 图2是本专利技术提供的在定点DSP进行MP3音频解码时优化内存空间的方法流程 图; 图3是本专利技术中浮点和定点解码波形文件及其相对误差分析图; 图4是本专利技术中部分存储空间(16bit)以及解码速度比较; 图5是本专利技术中霍夫曼解码数据存取空间调用代码; 图6是MP3帧数据流结构; 图7是IMDCT解码公式和子带合成滤波器中边带合成滤波表达式; 图8是利用DMA机制进行内存与外存数据直接读取模式; 图9是本专利技术中最终占用空间资源比较结果。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本专利技术进一步详细说明。 首先,从占用空间资源的角度分析,音频解码数据读入缓存(Streambuf)、保存霍 夫曼解码表、MDCT(改进型反离散余弦变换)以及子带合成滤波都需要占用较大的内存空 间。其中静态存储区主要存储音频解码流、霍夫曼解码表、窗函数和一些全局变量,静态数 据一直占据内存且数据值基本保持不变,合理存储静态数据可以节省很大的内存资源;动 态存储区主要存储实时解码中间数据,将中间数据保存在外部存储器,也可以节省内存。 本专利技术提供的在定点DSP进行MP3音频解码时优化内存空间的方法,包括静态内存的优化,主要指对于霍夫曼解码模块、改进型逆离散余弦变换模块和子带合成滤波器模 块涉及的静态数据进行优化和縮减空间占用率,并且不会引进误差;动态空间的优化,主要 指对于音频解码数据流进行动态更新,并且进行浮点转定点的运算节省内存空间;将中间 数据使用DMA机制存入外存,提高内存空间利用率。 下面将结合附图,详细说明本专利技术的每一个具体实施例。 图1为MP3音频解码流程图,该方法包括音频编码数据读入缓存、读头信息,提取 主数据、解码比例因子、解码霍夫曼数据、反量化采样、立体声处理、频谱重新排序、混迭信 号消除、改进型反离散余旋变换和子带合成滤波器。其中,反量化采样、立体声处理、MDCT、 子带合成滤波器都需要进行浮点运算,而16位定点DSP芯片在处理浮点运算过程中,浮点 数是以32bit形式存储运算的,虽然解码精度高,但是解码速度很慢,同时也占用大量的内 存空间,将浮点运算转为定点运算,在保持解码精度不会带来明显影响的情况下可以使存 储空间和解码速度有很大改进。 图2是本专利技术提供的在定点DSP进行MP3音频解码时优化内存空间的方法流程 图,该方法主要是将反量化采样、立体声处理、改进型反离散余旋变换和子带合成滤波器步 骤中涉及的浮点运算转换为定点运算;以及将实时解码产生的中间数据采用DSP的直接内 存访问机制进行数据搬运,存入到外部存储器。 图3为浮点与定点运算解码出的PCM波形文件以及相对误差波形。由图3可见, 在音量微弱处二者相对误差较大,定点算法基本丢失了原始数据,而只要音量微弱的地方 不要持续时间太长,带来的误差也不会很大,而且对于人耳听力基本没有差别。部分以浮点 保存的数据转换为定点可以节省一半内存,同时解码速度也提高到原来的3倍左右。 图4是浮点运算和改为定点运算的部分存储资源占用率以及解码速度比较结果。 所述DSP的直接内存访问机制是一种独立于处理器且能在内存和外部存储器之 间直接传输数据的专用控制器实现机制,处理器通过提供写入数据地址、读出数据地址、读 写数据深度、使能标志参数设置DSP的直接内存访问机制,DS本文档来自技高网
...

【技术保护点】
一种在定点DSP进行MP3音频解码时优化内存空间的方法,其中,定点DSP进行MP3音频解码包括:音频编码数据读入缓存、读头信息,提取主数据、解码比例因子、解码霍夫曼数据、反量化采样、立体声处理、频谱重新排序、混迭信号消除、改进型反离散余旋变换和子带合成滤波器;其特征在于,该方法包括:将反量化采样、立体声处理、改进型反离散余旋变换和子带合成滤波器步骤中涉及的浮点运算转换为定点运算;以及将实时解码产生的中间数据采用DSP的直接内存访问机制进行数据搬运,存入到外部存储器。

【技术特征摘要】
一种在定点DSP进行MP3音频解码时优化内存空间的方法,其中,定点DSP进行MP3音频解码包括音频编码数据读入缓存、读头信息,提取主数据、解码比例因子、解码霍夫曼数据、反量化采样、立体声处理、频谱重新排序、混迭信号消除、改进型反离散余旋变换和子带合成滤波器;其特征在于,该方法包括将反量化采样、立体声处理、改进型反离散余旋变换和子带合成滤波器步骤中涉及的浮点运算转换为定点运算;以及将实时解码产生的中间数据采用DSP的直接内存访问机制进行数据搬运,存入到外部存储器。2. 根据权利要求1所述的在定点DSP进行MP3音频解码时优化内存空间的方法,其特 征在于,该方法进一步包括在解码霍夫曼数据的步骤中采用16bit空间混用部分代码,将每个二维数组用一个16 位的地址空间来保存。3...

【专利技术属性】
技术研发人员:梁利平王志君
申请(专利权)人:中国科学院微电子研究所
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利