一种基于片上系统的音频解码器及其解码方法

文档序号:2837169阅读:521来源:国知局
专利名称:一种基于片上系统的音频解码器及其解码方法
技术领域
本发明涉及一种基于SoC (System on a Chip,片上系统)的音频解 码器及其解码方法,尤其涉及一种实现*. aac格式音频文件实时播放的音 频解码器及其解码方法。
背景技术
AAC (Advanced Audio Coding)编码标准最早是出现在MPEG-2标准 中,后来在MPEG-4中进行了进一步的修改和完善,成为最新数字音频压縮 编码标准。AAC编码标准是为了实现更高质量的数据压縮,在原有的MP4 音频压縮标准基础上,增加了更多的数据压縮处理工具。公示标准AAC编 码器的框架如图l所示,公示标准AAC解码器的框架如图2所示,该标准 的数据处理流程包括以下几个方面增益控制、滤波器组(filter bank)、 时域噪声整形(TNS temporal noise shaping)、预测、强度立体声耦合、 感知噪声整形(PNS perc印tual noise substitution), M/S立体声处理、 频谱数据比例因子量化(iquant and scalefactor decoding)、无损编码 和氺.aac格式码流输出。其中滤波器组、频谱数据比例因子量化、无损编 码和求.aac格式码流输出是其流程的必须组成部分,其余处理工具皆是可 选择项。为了适应不同实际情况下的编码压縮要求,AAC的编码标准包还分为 三个层次,分别为Main profile, LC (Low Complexity) profile, SSR (Scaleable Sampling) profile。其中Main profile包括了如图1所示 全部的处理步骤,是最完备的编码格式,可以得到最高的数据压縮比。LC profile不包括增益控制和预测,而且时域噪声整形功能也受到一定的限 制。SSR profile则不包括预测和强度立体声耦合,且时域噪声整形和带 宽受到限制。通常情况下,LC profile所能提供的音质效果几乎接近Main profile,但是它在算法和存储使用量上明显少于Main profile。所以大 多数AAC解码器都是使用LC profile算法的。自从AAC音频压縮标准一诞生,他就以因自身的独特魅力而迅速地在 数字多媒体领域得到各个方面的应用。例如著名的流行播放软件Winmap, iTuens都开始支持*. aac音频文件格式。松下,苹果等公司也相继 推出了支持AAC标准的相关数码产品。由此可见,未来的电子消费类市场, 兼容AAC标准功能的产品将成为一个热点,这就需要高效的,低成本,低 功耗的AAC标准嵌入式解决方案来满足这一需求。为了顺应这一趋势,很多研究机构和技术研发公司在这方面都做了很 多工作。一般来说,实现AAC解码器的途径有三种:在数字信号处理器(DSP) 上利用软件实现,采用全硬件体系实现(即ASIC)以及软/硬件协作的SoC 体系。但是根据对IEEE上检索查新得到的资料以及对国内各大学术期刊的 检索显示,可以看出现在关于AAC标准解码器的有关技术上,很多还是停 留在数字信号处理器(DSP)的层面,通过嵌入式软件的方式实现,利用简 化或改进软件算法来提高AAC解码器的解码效率。这其中便存在两个缺点 一是由数字信号处理器(DSP)来实现AAC解码,为了实现很高的数据压縮 比,涉及算法十分复杂,会加大对系统资源的占用,这是无论怎样改进软 件和算法都无法回避的问题。二是通过数字信号处理器(DSP)实现AAC 解码,这种方法无法优化硬件工作效率和能量消耗。这将不利于AAC解码 器应用于移动电子产品的开发。当然也有科研机构实现了全硬件(ASIC)的AAC解码器,2004年台湾 国立中央大学电气工程学院在IEEE上发表的"A Pure-ASIC Design A卯roach for MPEG-2 MC Audio Decoder" —文中就是这方面的代表。文 中通过合理划分模块功能,并采用双声道流水线处理方式实现全硬件 MPEG2-AAC解码器,其主要特点就是通过合理的硬件控制解决了 DSP无法 优化硬件效率和功耗的问题,并且提高解码速度。众所周知,AAC标准所 规定的*. aac格式的音频文件具有多种文件头格式,针对其不同的头文件, 解码方法也不尽相同,如果要使AAC解码器具有很好的兼容性,那么完成 全硬件的MC解码器就要求对AAC文件头进行在解码的同时一定要覆盖所 有可能出现的文件头形式,这无疑会增加硬件的面积开销,同时大大增加 产品的成本。除此之外还有其他一些并不是常用的解码插件工具亦是存在 这样的问题。在SoC已经十分发达的今天,这一方面是可以通过其他更为 简单和有效的方法来解决的。发明内容本发明针对现有AAC音频文件解码器存在的因算法复杂而占用系统资源、硬件工作效率无法优化、能量消耗多以及AAC解码器兼容性等问题提 出一种通过软、硬件相结合协作的基于SoC的AAC音频解码器及其解码方 法。本发明所述基于片上系统的AAC音频解码器,其特征在于,包括系统 控制部分301和解码实现部分302,所述系统控制部分301和解码实现部 分302 二者之间采用总线303进行通信,所述系统控制部分301主要负责 调整整个解码器的解码流程;所述硬件部分302主要负责AAC解码器的软 件解码和硬件解码两部分的工作;总线303主要负责系统控制部分301和 解码实现部分302之间的数据传输。所述系统控制部分301包括中央处理单元和中断控制单元307,中央 处理单元用于控制协调整个系统的工作,中断控制单元307用于控制中断 信号。所述解码实现部分302包括数字信号处理器和硬件解码模块305,所 述硬件解码模块305包括存储输入数据SRAM402、两组波形数据输出 SRAM403和AAC解码器硬件内核404,所述存储输入数据SRAM402和所述两 组波形数据输出SRAM403位于AAC与总线接口 401与AAC解码器硬件内核 404之间。所述AAC解码器硬件内核404包括:硬件控制模块501 ,保管AAC解码 需要的一些基本解码参数;比例因子解码与反量化模块502,对数据进行比例因子反量化处理;知觉噪声整形模块503,用于恢复自然噪声;滤波 器组模块507,将频谱数据变为时域数据;滤波器组参数存储R0M512;数 据RAM地址译码模块508,保存所述存储输入数据SRAM402中数据地址译 码;FFT临时存储RAM510、左右道数据存储SRAM509和左右道窗数据叠加 S隨511。所述比例因子解码与反量化模块502是将反量化和比例因子解码模块 集成为单一模块。所述知觉噪声整形模块503,针对双声道音频文件可采用并行处理。 所述AAC解码器硬件内核404还包括M/S立体声恢复模块504或动 态摆幅控制模块506或时域噪声整形模块505中的至少一个模块,其中所 述M/S立体声恢复模块504,用于实现Mid/Side立体声恢复;所述动态摆 幅控制模块506,用于协调和控制硬件输出;所述时域噪声整形模块505, 用于抑制前回声的声音处理方法。所述时域噪声整形模块505中,对于采样数据流先判断当前窗需解码 范围再进行时域噪声整形解码。本发明所述一种基于片上系统的MC音频解码器的解码方法,包括 步骤1:数据信号处理部分对数据流进行预处理;步骤2:硬件解码模块 305对经步骤1处理后的数据流进行解码;步骤3:硬件解码模块305中断, 输出解码后音频文件。所述步骤1所述预处理包括中央处理单元对解码器系统控制部分301 初始化参数配置及系统控制部分301对数据流进行分析。所述步骤2所述解码步骤包括比例因子解码与反量化和滤波器组处 理,以及知觉噪声整形或M/S立体声恢复或时域噪声整形或动态摆幅控制 中任一处理步骤。所述解码过程中的数据流传输可采用CPU传输或采用DAM传输任一实 现方式。在所述初始化参数配置后,解码系统寻找指定需要解码的AAC音频文 件,并将之放入指定的存储器中。所述数据信号处理部分对数据流进行分析包括对音频头文件的分析、 音频格式分析以及分析段数据流。本发明所述一种基于片上系统的AAC音频解码器及其解码方法,采用 软、硬件结合协作的方式,克服了现有AAC音频解码器存在的因算法复杂 而占用系统资源、硬件工作效率无法优化、能量消耗多以及MC解码器兼 容性等问题,实现了*3^格式的多种文件头格式兼容解码,且使用硬件模 块解码,速度快,相比软件解码对数字信号处理器要求低,同时降低成本。 将比例因子解码和反量化处理集成到一个模块中,减少了硬件存储和读取 数据的时间;时域噪声整形模块,通过采用先判断解码范围再解码的处理 方式,减少了运算步骤,优化算法并节省了运算时间;知觉噪声整形模块, 通过采用对双声道音频文件进行并行处理,优化了算法节省了运算时间。 本发明通过以上方式提供了一种低功耗、低成本和兼容性良好的AAC解码 器及解码方法,在音视频便携式电子产品十分发达的今天,低功耗、低成 本和高兼容性的音频播放系统已经成为其必不可少的一部分。


图1是标准MC解码器的框架图;图2是标准MC编码器的框架图;图3是本发明整个系统示意图;图4是本发明硬件部分的架构图;图5是本发明AAC解码器硬件内核具体示意图;图6a是本发明采用CPU传输方式工作主程序执行流程图;图6b是本发明采用CPU传输方式中断处理流程图;图7a是本发明采用DMA传输方式工作主程序执行流程图;图7b是本发明采用DMA传输方式中断处理流程图;图8是知觉噪声整形模块处理流程屈;图9是时域噪声整形模块处理流程图;图10是动态摆幅控制模块处理流程图。
具体实施方式
现结合

对本发明进行详细描述本发明所述MC解码器采用软、硬件相结合的解码方式,如图3所示, 本发明所述MC解码器主要分为系统控制部分301和解码实现部分302, 所述系统控制部分301和解码实现部分302通过总线303连接。所述系统控制部分301主要负责控制本发明所述的AAC解码器的整个 系统,并发出控制指令执行解码过程,该部分包括CPU304和中断控制器 307。 CPU304用于控制协调整个系统的工作;中断控制器307用于控制中 断信号,当数据输入/输出结束时或硬件产生中断时,向CPU304发出信号, 使CPU304做出相应的处理工作。所述解码实现部分302主要负责软件解码,即音频文件的数据流分析 和硬件解码,即对分析后的数据流作音频数据还原,先执行软件程序,再 通过硬件功能模块对软件解码后的音频数据流进行解码,完成AAC解码器 的其余计算量很大的工作,该部分包括DSP306和硬件解码模块305。如图4所示,硬件解码模块305包括AAC与总线接口 401,存储输入 数据SRAM402、波形数据输出SRAM403两组和AAC解码器硬件内核404。存 储输入数据SRAM402用于存储需解码音频文件的基本控制数据及采样数 据;两组波形数据输出SRAM403用于将解码完毕的波形数据流输出到总线 303。所述AAC解码器硬件内核404如图5所示,包括:硬件初始化模块501 、比例因子解码与反量化模块502、知觉噪声整形模块503、 M/S立体声恢复 模块504、时域噪声整形模块505、动态摆幅控制模块506、滤波器组模块 507、滤波器组参数存储R0M512、数据RAM地址译码模块508、 FFT临时存 储RAM(510)、左右道数据存储SRAM509和左右道窗数据叠加SRAM5U。其中,硬件控制模块501,因为AAC解码需要一些基本的解码参数, 这些参数是完成各个解码工序都必不可少的,所以专门使用一个模块对其 进行保管。另外该模块兼有协调其余各个模块之间工作的功能;数据SRAM 地址译码器模块508,因为存储输入数据的SRAM402中包含了与各个解码 工序相关的各种数据,该地址译码器模块将通过地址译码使对应的模块可 依得到与之相关的正确数据;比例因子解码与反量化模块502,用于恢复 为量化前的数据,同时恢复经过比例因子编码的频谱数据。先通过査表完 成反量化的操作,然后根据标准数据进行运算得出比例因子编码前的数据; 知觉噪声整形模块503用于对自然噪声的恢复,使输出的声音更加自然逼 真;M/S立体声恢复模块504,用于恢复经过M/S立体声处理的音频数据; 时域噪声整形模块505时域噪声整形是一种抑制前回声的声音处理方法; 动态摆幅控制506这个是可选择的功能,只有在必要的情况下才会使用; 滤波器组模块507,该模块解码器解码工作的最后一步。同时也是最为重 要,计算量最大的一步。它的输入数据为频谱数据,经过傅立叶变换后输 出时域声音数据。如图5、 6a所示,本发明所述AAC音频解码器的具体解码流程如下 步骤601:配置扬声器等播放工具的工作参数;播放音频文件启动MC解码器,CPU304通过总线303开始配置AAC解 码器DSP306的初始化参数;参数配置完毕后,解码系统寻找指定的需要解码的AAC音频文件,如未 找到,则返回错误信息,系统调处执行流程;找到音频文件后,将文件放 入指定的存储器中。步骤602:启动AAC软件部分完成对数据流的分析;CPU301向DSP306发出指令,启动软件解码部分,使之进入工作状态, 软件首先进行音频头文件的分析,判断该音频文件是否属于该解码器可解 码范围内的音频文件,如判断该文件不可解,则跳出解码步骤,报错并返 回系统初始状态,如判断可解,则进入下一个环节,分析该音频文件是采 用单声道格式还是立体声格式。在确定音频格式以后,根据其具体格式进入与之相对应的处理流程中。其中立体声格式的音频文件其处理流程如下该格式音频文件因为采 用的是双声道编码,先从音频数据流中获得两个声道配置参数,该参数的 一部分应用于下面的软件解码过程, 一部分将被送入硬件,作为将来硬件 解码部分的控制参数存放在存储输入数据SRAM402中;然后分析段数据流,查表获得解码需要的两个声道比例因子数据及两^^声道经过编码器处理后 的采样数据。单声道格式的音频文件处理流程与立体声格式的音频文件处理流程相 似,只是从音频数据流中获得的是单个声道配置参数,分析查表获得解码 需要的是一个声道比例因子数据和一个声道经过编码器处理后的采样数据。DSP306工作完成以后,向CPU304发出完成信号,将解码的控制权交 回CPU304。步骤603:将数字信号处理部分306分解后的数据送到硬件解码部分 305,启动硬件解码;CPU304得到数字信号处理部分306返回的信号以后,便向硬件解码部 分305发出启动信号,系统进入硬件解码阶段。硬件解码模块305接收到由CPU304发出的启动指令以后,进入工作状 态,硬件解码模块305中的硬件控制模块(501)先访问数据SRAM地址译码 器模块508,通过地址译码从存储输入数据SRAM402中获得由软件解码而 得的基本控制数据流,硬件控制模块501通过控制数据流进行初始化配置, 配置结束后,进入解码状态。首先比例因子解码与反量化模块502读取采样数据流,所述比例因子 解码与反量化模块502在己有标准公开的算法基础上,将反量化模块和比 例因子解码模块集成为单一模块,实现了同时完成对采样数据的比例因子 量化和整体反量化处理,它是AAC音频解码的基础步骤。在该模块处理过 程中,对于立体声音频文件,先判断该立体声音频文件是否采用统一窗函 数,如果不是,则类似单声道处理方式;如果是,则两个声道同时处理。 该模块会判断出 一个用来表示两个声道在编码上的相关性的控制信号,对 于立体声音频文件就会同时完成对两个声道的比例因子和反量化处理;对 于单声道音频文件,将分别完成各个声道的比例因子和反量化处理。比例 因子解码与反量化模块502完成对数据的处理后,把结果存入左右道数据存储SRAM509,并向硬件控制模块501发送"完成"信号,硬件控制模块 305收到该信号后,跳入下一个解码状态。
硬件控制模块(501对通过数据SRAM地址译码器模块(508中地址译 码从存储输入数据SRAM (402读取的基本控制数据进行判断,检测该音频 文件在编码时是否采用了知觉噪声整形工具,此模块是用于对自然噪声得 恢复,即对被采样的声音中有较长的空白,无主要音源情况下的环境噪声 进行恢复,对于这种情况该解码算法通过一个随机算法产生出与自然噪音 十分接近的频谱数据,替代之前釆样声音的自然噪音。如果该音频文件采 用了,则启动知觉噪声整形模块503,如图8所示,访问左右道数据存储 SRAM509读取采样数据流中当前频带数据,如果当前频带未使用噪声编码, 则访问下一频带数据。如果当前频带采用噪声编码则计算使用噪声编码的 带宽,确定此频带需做知觉噪声整形处理的带宽,该模块产生一组随机噪 声矢量,随机噪声矢量带宽与之前确定的带宽相等,对于随机矢量计算其 能量的均方,计算PNS量化因子,用计算所得量化因子对随机矢量进行量 化,并将计算结果写入左右声道数据存储SRAM402,判断是否处理完当前 帧的全部频带,如果处理完则对当前帧的频带做知觉噪声整形解码,如果 当前帧的所有频带都处理完,则处理后的结果仍然放回左右道数据存储 S画509,并向硬件控制模块501发送"完成"信号,硬件控制模块501 收到该信号后,跳入下一个解码状态。此步骤中,针对采用统一窗函数的 立体声音频文件实现并行处理,可以对两个声道同时进行知觉噪声整形处 理。
硬件控制模块501对通过数据SRAM地址译码器模块508中地址译码从 存储输入数据SRAM402读取的基本控制数据进行判断,检测该音频文件在 编码时是否经过M/S立体声处理,单声道音频文件不需要这一解码过程, 而大部分立体声编码格式的音频文件都会采用这一工具进行编码,如果采 用了,则启动M/S立体声恢复模块504,从左右道数据存储SRAM509中读 取上一步处理结果出,对音频数据作M/S立体声恢复处理,且两个声道同 时进行处理。处理后的结果仍然放回左右道数据存储SRAM509,并向硬件 控制模块501发送"完成"信号,硬件解码模块305收到该信号后,跳入 下一个解码状态。
硬件控制模块501对通过数据SRAM地址译码器模块508中地址译码从 存储输入数据SRAM402读取的基本控制数据进行判断,检测该音频文件是否需要进行时域噪声整形解码。时域噪声整形是一种抑制前回声的声音处 理方法,被采样的声音数据会存在这样一种情况,前一部分的声音信号响 度很低,而后一部分突然声音信号的响度提高,例如,先是一段很安静的 音乐,后面突然间出现非常强烈高昂的音乐掺杂进来。这样的声音数据进 行编码时,对经过编码后再恢复出来的系数做反量化,量化带来的扭曲将 会出现在整个重构区间里,前一部分平静的那段音乐就会出现回声,这就 叫做前回声,使用时域噪声整形解码就可以很好的消除这种前回声。如图
9所示,若需要此项处理,则启动时域噪声整形模块505,访问左右道数据 存储SRAM509,判断采样数据流中当前窗是否采用时域噪声整形编码,如 果没有采用,则跳入当前帧的下一窗数据进行判断;如果当前窗使用时域 噪声整形编码,则计算当前窗使用时域噪声整形编码的频带范围,然后对 计算出的频带范围做时域噪声整形解码,接着计算长时预测参数(LPC, linear predictive coding),并对长时预测参数也做时域噪声整形滤波, 即毛刺滤波,对数据进行波幅限制。最后将计算结果存储到左右道数据存 储SRAM509,判断当前窗内是否全部频带都处理完毕,如果当前窗还有其 它频带需要进行时域噪声整形解码,则跳回计算当前窗使用时域噪声整形 编码的频带范围;如果当前窗时域噪声整形解码完毕,则继续判断当前窗 所在帧是否已经解码完毕,如未完毕,则对当前帧的下一窗数据做解码; 如果解码完毕将处理后的结果仍然保存在左右到数据存储SRAM509,并向 硬件控制模块501发送"完成"信号,跳入下一个解码状态。
硬件控制模块501发送新的数据SRAM访问请求,通过数据SRAM地址译 码器模块508地址译码后从存储输入数据SRAM402读取的关于动态摆幅功 能的基本控制数据进行判断,检测该音频文件是否需要启动动态摆幅控制 模块506,此模块是对硬件输出起协调和控制作用。如需启动,如图10所 示,则访问左右道数据存储SRAM509读取频带数据,计算当前动态摆幅控 制处理的频带范围,并访问左右道数据存储SRAM509读取动态摆幅控制数 据,根据此数据计算动态摆幅增益因子,以此对频带内频谱数据做动态摆 幅控制处理并写回结果。如果当前频带解码完毕,则判断是否己处理完当 前帧的全部频带,如果没有,则进入下一频带的解码;如果解码完毕将处 理后的结果仍然存入左右道数据存储SRAM509,并向硬件控制模块501发 送"完成"信号,硬件控制模块501收到该信号后,跳入下一个解码状态。 该模块对于立体声音频文件可实现两个声道的数据同时进行解码,对于单
12声道音频文件则对一个声道的数据进行处理。
硬件控制模块501向左右道数据存储SRAM509发出指令,读取采样数 据流,此时输入数据为频谱数据,硬件控制模块305向滤波器组模块507 发出指令,滤波器组模块507从滤波器组参数存储R0M512将运算参数取出, 对输入数据做傅立叶变换计算,计算的中间值存在FFT临时存储RAM510 中,计算的结果在左右声道窗数据叠加SRAM511中进行去毛刺处理,最后 从滤波器组模块中输出16bit的PCM声音数据流。
以上为本发明AAC解码器对于立体声、单声道音频文件中的一帧数据 的解码过程。
步骤604:等待解码器实现部分302中断;
如图6b所示步骤605:读取AAC中断状态寄存器;步骤606:输入 下一帧的音频数据,在启动硬件进行下一帧的解码,这里当硬件解码305 部分工作时,DSP306将会先取下一帧的数据流进行数据分析;步骤607: 下一帧的音频数据输入完毕后,先启动硬件解码部分,使之进入工作状态; 步骤608:读取当前帧的解码数据结果;步骤609:返回并等待解码器实现 部分302的下一个中断。这是一个循环处理过程当硬件部分的解码工作完 成后,硬件控制模块向CPU304发出一个"处理完成"的中断信号,CPU304 获得硬件的中断信号以后,开始配置音频播放器,然后读取由硬件解码部 分处理后得出的结果,送到音频播放器中,播放音频文件,完成整个音频 文件的解码过程。,
另外,本发明所述AAC音频解码器的解码过程中,除了上述处理过程 中采用CPU传输方式进行解码过程控制外,还可以采用DMA(Direct Memory Access,直接存储器)存取传输方式进行解码过程控制,如图7a所示,其 工作流程为
步骤701:配置扬声器等播放工具的工作参数;
步骤702:启动MC解码器软件部分,检查软件得出数据是否放在DMA 可寻址单元内;如果没有,则返回,再次执行步骤702;如 果已存放,则进入歩骤703;
步骤703:初始化DMA;
步骤704:启动AAC解码器硬件解码模块;
步骤705:等待AAC解码器硬件解码模块部分发出中断信号;在此步 骤中,如图7b所示,当AAC解码器的硬件解码模块产生中断信号后,跳入中断处理过程,如图7b所示,步骤706:由CPU读取AAC中断状态寄存器 706;步骤707: CPU检査下一帧软件分析所得数据是否已放在DMA的指定 地址,如果没有,则返回,再次检査,如果己存放,则将下一帧的待解码 数据流输入硬件解码模块,并启动硬件解码模块305,步骤709:再读取前 一帧的输出数据;步骤710:返回并等待硬件部分302中断。
采用DMA传输方式进行解码过程控制的具体解码流程与采用CPU传输 方式的具体解码流程中,硬件解码模块305内部流程完全相同。
本发明所述一种基于片上系统的AAC音频解码器及其解码方法,采用 软、硬件结合协作的方式,克服了现有AAC音频解码器存在的因算法复杂 而占用系统资源、硬件工作效率无法优化、能量消耗多以及MC解码器兼 容性等问题,实现了4aac格式的多种文件头格式兼容解码,且使用硬件模 块解码,速度快,相比软件解码对数字信号处理器要求低,同时降低成本。 将比例因子解码和反量化处理集成到一个模块中,减少了硬件存储和读取 数据的时间;时域噪声整形模块,通过采用先判断解码范围再解码的处理 方式,减少了运算步骤,优化算法并节省了运算时间;知觉噪声整形模块, 通过采用对双声道音频文件进行并行处理,优化了算法节省了运算时间。 本发明通过以上方式提供了一种低功耗、低成本和兼容性良好的AAC解码 器及解码方法,在音视频便携式电子产品十分发达的今天,低功耗、低成 本和高兼容性的音频播放系统已经成为其必不可少的一部分。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说 明,不能认定本发明具体实施只局限于这些说明。对于本发明所属技术领 域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干 简单推演或替换,都应当视为属于本发明的保护范围。
权利要求
1、一种基于片上系统的AAC音频解码器,其特征在于,包括系统控制部分(301)和解码实现部分(302),所述系统控制部分(301)和解码实现部分(302)二者之间采用总线(303)进行通信,所述系统控制部分(301)主要负责调整整个解码器的解码流程;所述硬件部分(302)主要负责AAC解码器的软件解码和硬件解码两部分的工作;总线(303)主要负责系统控制部分(301)和解码实现部分(302)之间的数据传输。
2、 如权力要求1所述一种基于片上系统的AAC音频解码器,其特征在 于,所述系统控制部分(301)包括中央处理单元和中断控制单元(307), 中央处理单元用于控制协调整个系统的工作,中断控制单元(307)用于控 制中断信号。
3、 如权力要求1所述一种基于片上系统的MC音频解码器,其特征在 于,所述解码实现部分(302)包括数字信号处理器和硬件解码模块(305), 所述硬件解码模块(305)包括存储输入数据SRAM (402)、两组波形数 据输出SRAM (403)和AAC解码器硬件内核(404),所述存储输入数据SRAM(402)和所述两组波形数据输出SRAM (403)位于AAC与总线接口 (401) 与AAC解码器硬件内核(404)之间。
4、 如权力要求3所述一种基于片上系统的AAC音频解码器,其特征在 于,所述AAC解码器硬件内核(404)包括:硬件控制模块(501),保管AAC 解码需要的一些塞本解码参数;比例因子解码与反量化模块(502),对数 据进行比例因子反量化处理;知觉噪声整形模块(503),用于恢复自然噪 声;滤波器组模块(507),将频谱数据变为时域数据;滤波器组参数存储 ROM (512);数据RAM地址译码模块(504),保存所述存储输入数据SRAM(402)中数据地址译码;FFT临时存储RAM(510)、左右道数据存储SRAM (509)和左右道窗数据叠加SRAM (511)。
5、 如权力要求4所述一种基于片上系统的AAC音频解码器,其特征在 于,所述比例因子解码与反量化模块(502)是将反量化和比例因子解码模 块集成为单一模块。
6、 如权力要求4所述一种基于片上系统的AAC音频解码器,其特征在 于,所述知觉噪声整形模块(503),针对双声道音频文件可采用并行处理。
7、 如权力要求4所述一种基于片上系统的AAC音频解码器,其特征在于,所述AAC解码器硬件内核(404)还包括M/S立体声恢复模块(504) 或动态摆幅控制模块(506)或时域噪声整形模块(505)中的至少一个模 块,其中所述M/S立体声恢复模块(504),用于实现Mid/Side立体声恢复; 所述动态摆幅控制模块(506),用于协调和控制硬件输出;所述时域噪声 整形模块(505),用于抑制前回声的声音处理方法。
8、 如权力要求7所述一种基于片上系统的AAC音频解码器,其特征在 于,所述时域噪声整形模块(505)中,对于采样数据流先判断当前窗需解 码范围再进行时域噪声整形解码。
9、 一种基于片上系统的AAC音频解码器的解码方法,包括步骤l:数据信号处理部分对数据流进行预处理;步骤2:硬件解码模块(305)对经步骤1处理后的数据流进行解码;步骤3:硬件解码模块(305)中断,输出解码后音频文件。
10、 如权利要求9所述一种基于片上系统的AAC音频解码器的解码方 法,其特征在于,所述步骤1所述预处理包括中央处理单元对解码器系统 控制部分(301)初始化参数配置及系统控制部分(301)对数据流进行分 析。
11、 如权利要求9所述一种基于片上系统的AAC音频解码器的解码方 法,其特征在于,所述步骤2所述解码步骤包括比例因子解码与反量化和 滤波器组处理,以及知觉噪声整形或M/S立体声恢复或时域噪声整形或动 态摆幅控制中任一处理步骤。
12、 如权力要求9所述一种基于片上系统的AAC音频解码器的解码方 法,其特征在于,所述解码过程中的数据流传输可采用CPU传输或采用DAM 传输任一实现方式。
13、 如权利要求10所述一种基于片上系统的AAC音频解码器的解码方 法,其特征在于,在所述初始化参数配置后,解码系统寻找指定需要解码 的AAC音频文件,并将之放入指定的存储器中。
14、 如权利要求10所述一种基于片上系统的AAC音频解码器的解码方 法,其特征在于,所述数据信号处理部分对数据流进行分析包括对音频头 文件的分析、音频格式分析以及分析段数据流。
全文摘要
本发明公开了一种基于片上系统的AAC音频解码器及其解码方法,其解码器特征在于,包括系统控制部分(301)和解码实现部分(302)并通过总线(303)连接并进行两部分的通信。系统控制部分(301)主要负责协调整个解码器的解码流程,解码实现部分(302)主要负责软件解码,即音频文件的数据流分析和硬件解码,即对分析后的数据流作音频数据还原,音频文件解码完毕后,通过硬件解码模块(305)向中断控制器(307)发出任务完成中断,输出解码后的音频文件。本发明采用软、硬件结合协作的方式,实现了*aac格式的多种文件头格式兼容解码,解码速度快,对数字信号处理器要求低,同时应用方案成本低。
文档编号G10L19/02GK101308658SQ20071007443
公开日2008年11月19日 申请日期2007年5月14日 优先权日2007年5月14日
发明者琳 李, 汤加跃, 岭 石 申请人:深圳艾科创新微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1