AAC音频解码中位数可选且自动加载移位寄存器设计
[10-10 20:42:03] 来源:http://www.88dzw.com 电子制作 阅读:8947次
文章摘要:1、引言在对采样率为44.1kHz的AAC音频进行解码时,一帧的解码时间须控制在23.22毫秒内。且音频中每一帧可包含1~48个声道的数据,若遇时序要求最严格的场合,即一帧包含48个声道数据,实时性则很难满足,因此速度便成为硬件设计的重要指标。所以在系统设计时,为完成解码的实时性要求,各模块应以速度为优化目标。在AAC音频解码电路的设计中,需要一块电路连接AAC比特流的存储电路和和取数解码电路,考虑到它须完成数据缓冲和移位的功能,我们选择用移位寄存器来实现,示意图如下。 图1 移位寄存器功能示意图
AAC音频解码中位数可选且自动加载移位寄存器设计,标签:电子小制作,http://www.88dzw.com1、引言
在对采样率为44.1kHz的AAC音频进行解码时,一帧的解码时间须控制在23.22毫秒内。且音频中每一帧可包含1~48个声道的数据,若遇时序要求最严格的场合,即一帧包含48个声道数据,实时性则很难满足,因此速度便成为硬件设计的重要指标。所以在系统设计时,为完成解码的实时性要求,各模块应以速度为优化目标。
在AAC音频解码电路的设计中,需要一块电路连接AAC比特流的存储电路和和取数解码电路,考虑到它须完成数据缓冲和移位的功能,我们选择用移位寄存器来实现,示意图如下。
图1 移位寄存器功能示意图
典型的移位寄存器有两个特点:1)每个时钟周期移一位,2)加载的优先级别高于移位的优先级别,移位需等待加载的完成。而AAC音频数据采用变长编码技术,即压缩比特流中的数据部分为可变长的哈夫曼编码,所以每次解码完毕从移位寄存器中移出的位数不是固定值,若使用典型移位寄存器一位一位地移数据降低了工作效率;且每次移位须等待加载完毕进行,耗费了等待时间。所以,典型的移位寄存器在时序要求紧张的场合对速度提高起到了负面作用,导致整个系统不能完成实时性要求。因此本设计针对AAC音频解码这一特殊应用,对典型移位寄存器在速度方面进行改进设计,使之每一周期可移出任意位,且移位无须等待加载完成,从而加速了移位过程,使之满足实时性要求。
论文结构如下:首先介绍本设计的工作原理,对其中一些参数进行配置;其次分模块进行电路设计;再次,将典型移位寄存器和本设计分别下载到FPGA开发板,从速度和面积两方面进行实验结果的比较;最后,对设计展望,提出可优化的方向。
2、工作原理
考虑到本设计的特定使用场合,选择移位寄存器为64位,移位位数是1~16可变的整数,存储空间是位宽为32位的fifo。在其他场合下,可基于同样的设计方法通过改变参数来满足要求。
移位寄存器功能示意如图1所示,此移位寄存器连接了两块电路单元:单元一、需要取数的AAC音频解码电路单元;单元二、数据的存储空间。当任意时刻单元一需取数时,可向移位寄存器发出取数信号,并给出要取的位数,移位寄存器就在一个周期内将所需长度的数据移出。当移位寄存器中的数据少于一定量时(在此设为32位),会自动从单元二中加载数据,且加载与移位同优先级别,所以无须等待时间。
3、位数可选、自动加载移位寄存器电路设计
以主要寄存器的不同功能依据,将电路划分为如下图所示的虚线框内的三个模块。下面将分模块介绍电路的设计。
图2 位数可选、自动加载移位寄存器电路图
3.1 有效数据计数器的设计
有效数据计数器是用来记录移位寄存器中剩余有效数据的位数。初始化时,存储器向移位寄存器加载64位有效数据,计数器为64;当外界从移位寄存器取数时,计数器在原有计数的基础上减掉所取的位数;当移位寄存器从存储器加载数据时,计数器在原有计数的基础上加上加载数据的位宽(32);当移位和加载同时进行时,计数器进行上述的减法和加法的混合运算。
《AAC音频解码中位数可选且自动加载移位寄存器设计》相关文章
- › AAC音频解码中位数可选且自动加载移位寄存器设计
- 在百度中搜索相关文章:AAC音频解码中位数可选且自动加载移位寄存器设计
- 在谷歌中搜索相关文章:AAC音频解码中位数可选且自动加载移位寄存器设计
- 在soso中搜索相关文章:AAC音频解码中位数可选且自动加载移位寄存器设计
- 在搜狗中搜索相关文章:AAC音频解码中位数可选且自动加载移位寄存器设计