(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf_第1页
(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf_第2页
(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf_第3页
(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf_第4页
(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(通信与信息系统专业论文)基于fpga的音频处理器的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 目前,随着家用和便携式音频处理器如d v d 音频唱盘、m p 3 多媒体播放器、 助听器等的发展,它们对系统的音质、体积、功耗和处理速度的要求越来越苛 刻,数字音频处理技术已经逐渐取代模拟音频处理技术,并且得到了迅速的普 及和发展。音频处理的数字化是利用数字滤波算法对采集到的音频信号进行变 换处理来实现的。传统的数字滤波器采用乘法和累加( m a c ) 结构,需要进行多次 的乘法和加法运算。由于乘法器庞大的结构,占用了音频处理芯片上的大部分 面积,消耗了大部分功率,使得音频处理系统在体积和处理速度上存在着不足, 所以传统的数字滤波器不能很好的满足家用和便携式音频处理器对体积小、功 耗小、信号处理速度高的要求。 本文分析了数字音频处理技术中数字滤波器的各种传统实现算法,尤其是研 究了f i r 数字滤波器的实现算法,在分析了数字滤波器的传统算法的基础上, 针对家用和便携式音频处理系统,提供种基于f p g a 的音频处理器的实现方 案,以适应便携式和家用设备对处理器体积和功耗小的发展要求。该方案对实 现n 阶f i r 数字滤波器的传统算法进行了改良,将滤波器的系数用浮点数表示 法来表示,使得原本至少需要一个乘法器和一个加法器来实现滤波功能,现在 仅需要若干次加法和移位运算就可以实现,很大程度降低了设计的复杂度和系 统功耗,也减少了芯片的面积。同时采用硬件描述语言v h d l 实现了音频处理 器各个模块的设计。 关键词:数字音频处理数字滤波器f p g av h d l a b s t r a c t a t p r e s e n t ,w i t ht h ed e v e l o p m e n t o ft h eh o u s e h o l da n dp o r t a b l ea u d i op r o c e s s o r s s u c ha sd v da u d i od i s c , m p 3m u l t i m e d i ap l a y e ra n d h e a t i n ga i d ,t h er e q u i r e m e n t so f w h o s ei nt h ev o l u m e ,p o w e rw a s t ea n dp r o c e s s i n gs p e e di sm o r ea n dm o r eh a r s h n o w a d a y s ,t h ea n a l o ga u d i op r o c e s s i n gt e c h n o l o g yi sr e p l a c e dg r a d u a l l yb yt h e d i g i t a la u d i op r o c e s s i n gt e c h n o l o g y , a n dt h ed e v e l o p m e n t o f d i g i t a la u d i op r o c e s s i n g t e c h n o l o g y i s r a p i d t h e a u d i op r o c e s s i n gd i g i t i z a t i o ni s u s i n gt h ed i g i t a l f i l t e r a l g o r i t h mt os a m p l e a n d p r o c e s st h ea u d i os i g n a l t h e t r a d i t i o n a ld i g i t a lf i l t e r su s et h e m u l t i p l i c a t i o na n dt h ea c c u m u l a t i o n ( m a c ) s t r u c t u r et h a t n e e d st oc a r r yo nm a n y t i m e sm u l t i p l i c a t i o na n da d d i t i v e o p e r a t i o n s a s ar e s u ko fm u l t i p l i e rh a s h u g e s t r u c t u r e i ti m p r o p r i a r e st h em a j o r i t ya r e aa n dc o n s u m e sm o s tp o w e ro ft h ec h i p t h u st h ea u d i op r o c e s s i n gs y s t e mh a st h ei n s u f f i c i e n c yi nt h ev o l u m ea n dt h e p r o c e s s i n gs p e e d t h e r e f o r et h et r a d i t i o n a ld i g i t a lf i l t e rc a n n o tb e s a t i s f i e dw i t ht h e h o u s e h o l da n dp o r t a b l ea u d i op r o c e s s o rt h a tn e e d ss m a l lv o l u m e ,l o wp o w e rw a s t e a n d h i g ip r o c e s s i n gs p e e d w e s t u d y t h et r a d i t i o n a la l g o r i t h mo ft h ed i i g i t e lf i l t e r s ,e s p e c i a l l yt h ef i rf i l t e r s ; p r o v i d e ar e s o l v eo fa u d i op r o c e s s o r , w h i c hb a s e do nf p g at om e e tt h er e q u i r e m e n t s o ft h ep o r t a b l ea n dh o u s e h o l da u d i os y s t e m s w ei m p r o v et h ea l g o r i t h mo ft h en o r d e r sf i rf i l t e r s ;f i g n r et h ec o e f f i c i e n to ft h ef i l t e r sw i l l lp o t ( p o w e ro ft w o ) i t m a k e st h ef i l t e r j u s t n e e d sa na d d e ra n das h i f t e rt or e a l i z e t h i sr e d u c et h e c o m p l e x i t y o ft h ea l g o r i t h m 、t h ew a s t eo f p o w e ra n d t h ea r e ao ft h ec h i p w ea d o p t t h ev h d l l a n g u a g et od e s i g ne a c hm o d u l e k e y w o r d s :d i g i t a l a u d i o p r o c e s s i n g , d i g i t a lf i l t e r , f p g a , v h d l i i 武汉理工大学硕士学位论文 第1 章绪论 1 1 数字音频处理技术的发展现状 随着计算机技术的发展,特别是海量存储设备和大容量内存在p c 机上的实 现,对音频信号进行数字化处理便成为可能。数字化处理的核心是对音频信息 进行采样,然后对采集到的数据进行处理【1 l 。 在过去的2 0 年中,数字音频处理技术已经取得了长足的进步。但是大多数 的嶝女字系统”并没有完全达到数字化,实际上大多部分音频系统的处理都仍在模 拟领域进行1 2 1 。在模拟音频技术中,对音频信号的处理手段和方法直接影响到模 拟音频系统的回放质量。数字音频处理的核心是对音频信息进行采样,并使用 二进制序列存放,通过对采集到的数据进行处理,达到滤波处理的目吲3 1 。 微软公司主席比尔盖茨在2 0 0 5 年初拉斯维加斯国际消费电子展( c e s l 上 曾表示,目前数字音频的增长速度可以与上世纪八十年代p c 业发展速度相比, 他甚至预测到2 0 1 0 年人类所有的音频内容都将实现数字化【4 j 。 随着家用和便携式音频处理器如d v d 音频唱袁、m p 3 多媒体播放器、助昕 器等对音质、体积、功耗和处理速度的要求越来越苛刻,数字音频处理技术已 经逐渐取代模拟音频处理技术,并且得到了迅速的普及和发展【5 】。数字音频处理 即使被复制无数次,数字音频信号绝对不会出现任何信号丢失或发生变化的情 况。数字音频技术是通过将声波波形转换成一连串的二进制的数据来保存声音 的。实现这个步骤主要依靠模数转换器( a d c ,a n a l o g t od i g i t a lc o n v e r t e r ) ,它 每隔一个时间间隔不停地间断性地在模拟音频的波形上采集一个幅度值,这一 过程我们称之为采样。而每个采样所获得的数据与该时间点的声波信号相对应, 它称之为采样样本。将一连串样本连接起来,就可以描述段声波了,而每秒 钟对声波采样的次数我们称之为采样频率,单位是i - b ( 赫兹) 。对于每一个采样, 系统会分配一定的储存位数( b i t 数) 来表达声波的振幅状态,称之为采样精度,这 一过程也可称之为量化。采样精度越高,声音被还原的就越细腻。数字音频是 经过采样和量化后得到的。时间上的离散叫采样,幅度上的离散叫量化。随后 按一定的格式将离散的数字信号记录下来,并在数据的前、后加上同步和纠错 等控制信号,即完成了转化工作【6 】。 音频处理技术的数字化是利用数字滤波算法对采集到的音频信号进行变换 武汉理工人学硕士学位论文 处理来实现的。传统的数字滤波器算法采用乘法和累加( m a c ) 结构,需要进行多 次的乘法和加法运算。由于乘法器庞大的结构,占用了芯片的大部分面积,消 耗了大部分功率。所以在数字滤波器的设计中,如何有效的提高运算速度,减 小系统体积,降低系统功率是一个关键的问题。 1 2 f p g a 技术的发展现状 f p g a 是英文f i e l d p r o g r a m m a b l e g a t e a r r a y 的缩写,即现场可编程门阵列, 它是在p a l 、g a l 、e p l d 等可编程器件的基础上进一步发展的产物【j ”。它是作 为专用集成电路( a s i c ) 领域中的一种半定制电路而出现的,既解决了定制电路的 不足,又克服了原有可编程器件门电路数有限的缺点【引。 尽管f p g a 和c p l d 都是可编程a s i c 元件,但由于f p g a 和c p l d 结构 上的差异,彼此之间还是存在各自不同的特点【9 l = n ) c p l d 适合用来实现各种运算和组台逻辑( c o m b i n a t i o n a l1 0 9 i c ) ,f p g a 则是适用于实现循序逻辑( s e q u e n t i a ll o g i c ) 。换句话说,f p g a 适合于触发器 ( n i p f l o p ) 较多的结构,而c p l d 则适合于触发器有限而乘积项( p r o d u c tt c 珊) 较多 的结构【1 们。 ( 2 ) c p l d 的时间特性预估比f p g a 容易。c p l d 的连续式布线( 互连) 结构泱 定了它的时序延迟是均匀的和可预测的,丽f p g a 的分段式布线结构使得其时 间延迟的预测变的困难。同样的理由也造成c p l d 的速度比f p g a 快,在编理 上f p g a 比c p l d 具有更大的灵活性。c p l d 通过修改具有固定内部连线电路的 逻辑功能来编程,而f p g a 主要是通过改变内部电路布线来编程,也就是说: f p g a 可在逻辑门下编程,而c p l d 是在逻辑块下编程【1 1 】。 ( 3 ) f p g a 的集成度比c p l d 高,适合较复杂的布线结构和逻辑实现,所以 f p g a 元件的可编程逻辑门数比起c p l d 大许多1 1 2 1 。 ( 4 ) c p l d 使用上比f p o a 方便。c p l d 韵编程采用e 2 p r o m 或f l a s h 技术, 使用时外部不需要另外的记忆储存元件,而f p g a 的编程采用s r a m 技术,所 以使用时外部需要搭配记忆储存元件存放编程信息,使用方法较复杂。这一特 性进一步造成f p g a 的保密特性较c p l d 差;因为f p g a 的电路编程资讯,另 外储存在外部的记忆元件中( e p r o u n a s h ) ,电路资料容易被他人读取,电路容 易被复制【1 3 】。 ( 5 ) 在编程方式上,c p l d 主要是基于e 2 p r o m 或f l a s h 储存编程,可编程 次数大于1 万次,优点是系统断电时,编程信息不会消失。f p g a 大部分是基于 s r a m 编程,编程信息会在系统断电时消失,所以每次上电复位时系统都要重 武汉理工大学硕士学1 :奇:论文 新将编程信息从外部记忆装置读入f p g a 中的s r a m ,其优点是可编程次数不 限,并且在开发过程中可以很方便的随时更改编程【1 4 】。 ( 6 ) 一般情况下,c p l d 的功耗要比f p g a 大,且集成度越高越明显。 f p g a 采用了逻辑单元阵列l c a ( l o # c c e l l a r r a y ) 这样一个新概念,内部 包括可配置逻辑模块c l b ( c o n f i g u r a b l cl o g i cb l o c k ) 、输出输入模块i o b ( i n p u t o u t p u tb l o c k ) 和内部连线( i n t e r c o n n e c t ) 三个部分。f p g a 的基本特点主要有【1 5 】: ( 1 ) 采用f p g a 设计a s i c 电路,用户不需要投片生产,就能得到合用的芯 片。 ( 2 ) f p g a 可做其它全定制或半定制a s i c 电路的中试样片。 ( 3 ) f p g a 内部有丰富的触发器和i o 引脚。 ( 4 ) f p g a 是a s i c 电路中设计周期最短、开发费用最低、风险最小的器件之 ( 5 ) f p g a 采用高速c h m o s 工艺,功耗低,可以与c m o s 、1 阻电平兼容。 可以说,f p g a 芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 随着微电子技术的发展,采用现场可编程门阵列f p g a 进行数字信号处理得 到了飞速发展。 f p g a 有着规整的内部逻辑块阵列和丰富的资源,特剐适合细粒度和高并行 度结构特点的数字信号处理任务,如f i r 滤波器等,相对于串行运算主导的通 用d s p 芯片来说并行性和扩展性都更好1 1 6 l 。 f p g a 当中有很多自由的门,将这些自由的门连接起来可以形成乘法器、寄 存器以及地址发生器等等。这些只要在框图级完成,许多块可以从简单的门到 f i r ( 有限冲激响应) 和f f t ( 快速傅立叶变换) 在很高的级别完成。但它的性能受 门数及运算速度的限制。 由于f p g a 具有现场可编程的特点,可以实现专用集成电路a s i c ,f p g a 既具有门阵列的高逻辑密度和高可靠性,又具有可编程逻辑器件的用户可编程 特性,可以减少系统设计和维护的风险,降低产品成本,缩短设计周期。因此 越来越受到硬件电路设计工程师门的青睐i 】。 a s i c 作为集成电路( i c ) 技术与特定用户的整机或系统技术紧密结合的产 物,与通用集成电路相比,在构成电子系统时具有以下几个方面的优越性( 埽l : ( 1 ) 缩小体积、减轻重量、降低功耗; ( 2 ) 提高可靠性,用a s i c 芯片进行系统集成后,外部连线减少,因而可靠 性明显提高; ( 3 ) 易于获得高性能,a s i c 是针对专门应用而特别设计的;系统设计、电 路设计、工艺设计之间紧密结合,这种一体化的设计有利于获得前所未有的高 武汉理工大学硕士学位论文 性能系统; ( 4 ) 可增强保密性,电子产品中的a s i c 芯片对用户来说相当于一个”黑匣子 ”,难于仿造; ( 5 ) 在大批量应用时,可显著降低系统成本。 自1 9 8 5 年x i l i n x 公司推出第一片现场可编程逻辑器件( f p g a ) 至今,f p g a 已经历了十几年的发展历史。在这十几年的发展过程中,以f p g a 为代表的数 字系统现场集成技术取得了惊人的发展:现场可编程逻辑器件从最初的1 2 0 0 个 可利用门,发展到9 0 年代的2 5 万个可利用门,乃至当新世纪来临之即,国际 上现场可编程逻辑器件的著名厂商a l t e r a 公司、x i l i n x 公司又陆续推出了数百万 门的单片f p g a 芯片,将现场可编程器件的集成度提高到一个新的水平【1 9 】。 纵观现场可编程逻辑器件的发展历史,其之所以具有巨大的市场吸引力, 根本在于:f p g a 不仅可以解决电子系统小型化、低功耗、高可靠性等问题,而 且其开发周期短、开发软件投入少、芯片价格不断降低,促使f p g a 越来越多 地取代了a s i c 的市场,特别是对小批量、多品种的产品需求,使f p g a 成为首 选【2 0 】。 目前,f p g a 的主要发展动向是:随着大规模现场可编程逻辑器件的发展, 系统设计进入”片上可编程系统”( s o p c ) 的新纪元;芯片朝着商密度、低压、低功 耗方向挺进;国际各大公司都在积极扩充其i p 库,以优化的资源更好的满足用 户的需求,扩大市场;特别是引人注目的所谓f p g a 动态可重构技术的开拓, 将推动数字系统设计观念的巨大转变【2 1 1 。 近年来,随着集成芯片制造技术的发展,现场可编程门阵列在速度和集成 度两方面得到了飞速提高。由于它具有功耗低、体积小、集成度高、速度快、 开发周期短、费用低、用户可定义功能及可重复编程和重复编程擦写等许多优 点,应用领域不断扩大,越来越多的电子系统开始采用可编程逻辑器件来实现 数字信号处理,从而使通用d s p 芯片难于完成的一些时序组合逻辑和某些简单 的大运算量的数学计算得以实现。 现场可编程门阵列的价值在于其缩短电子产品制造商开发周期以及帮助他 们更快地将产品推向市场的能力。随着p l d 供应商继续致力于在可编程逻辑器 件中集成更多的功能、降低其成本并提高能够节约时间的i p 核心的可用性,可 编程逻辑一定会在数字设计人员中进一步普及开来【2 2 】。 4 武汉理上大学硕士学位论文 1 3 课题的研究背景和主要内容 1 3 1 课题的研究背景 目前,随着家用和便携式音频处理器如d v d 音频唱盘、m p 3 多媒体播放器、 助听器等的发展,它们对音质、体积、功耗和处理速度的要求越来越苛刻,数 字音频处理技术已经逐渐取代模拟音频处理技术,并且得到了迅速的普及和发 展f 矧。音频处理的数字化是利用数字滤波算法对采集到的音频信号进行变换处 理来实现的。传统的数字滤波器采用乘法和g 加( m a c ) 结构,需要进行多次的乘 法和加法运算。由于乘法器庞大的结构,占用了系统芯片上的大部分面积,消 耗了大部分功率,使得音频处理系统在体积和处理速度上存在着不足,所以传 统的数字滤波器不能很好的满足家用和便携式音频处理器对体积小、功耗小、 信号处理速度高的要求。 本文设计的基于即g a 的音频处理器,由于对传统滤波算法进行了改良,用 加法移位操作取代了乘法运算,并且使用硬件描述语富v h d l 进行程序设计, 通过对程序的优化,利用软件验证设计结果。不但缩短了设计周期,而且降低 了系统芯片的体积和功耗,具有一定的研究意义。 1 3 2 课题的主要内容 本文设计的内容是在对传统的数字滤波器的算法进行改良的基础上,利用 f p g a 实现一种数字音频处理器。完成了音频处理器的结构设计,利用硬件描述 语言v h d l 进行程序设计,最后利用软件m a x p l u s 对设计结果进行仿真,验 证设计结果达到了设计要求。基于f p g a 实现的音频处理器较之利用传统数字 滤波器实现的数字音频处理器有着更良好品质: ( 1 ) 缩短了设计周期。由于利用硬件描述语言v h d l 进行程序设计,完成音 频处理器各个模块的设计,对程序进行优化设计,达到设计要求,利用仿真软 件就可验证设计结果,缩短了设计周期。 处理速度高。由于对传统的数字滤波算法进行了改良,只需要一个加法 器和若干次移位就可以实现滤波功能,很大程度提高了信号处理速度。 f 3 ) 降低了系统芯片的体积和功耗。家用和便携式的设备对体积和功耗要求 武汉理工人学硕士学位论文 十分苛刻,而体积小正是a s i c 芯片的优点之一 2 4 j 。 显然利用f p g a 实现这种专用数字音频处理器具有更好的市场前景。但这 种处理器目前还处于研究阶段,尚未应用到产品当中。因此,设计这种处理器 就是本项目的研究目标。 武汉理:t = 人学硕士学位论文 第2 章数字音频处理的理论基础及算法研究 2 1 数字音频处理的理论基础 2 1 1 数字滤波器的基本概念 所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输 入信号所含频率成分的相对比例或者滤除某些频率成分的器件【2 5 】。因此,数字 滤波的概念和模拟滤波相同,只是信号的形式和实现滤波方法不同。数字滤波 器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配 以及实现模拟滤波器无法实现的特殊滤波功能等优点。如果要处理的是模拟信 号,可通过a d c 和d a c ,在信号形式上进行匹配转换,同样可以使用数字滤波 器对模拟信号进行滤波i 矧。 在许多信息处理过程中,如对信号的过滤、检测、预测等。都要广泛地用到滤 波器,而数字滤波器则因其设计灵活、实现方便等特点而广为接受【2 7 l 。 数字滤波器的功能本质是按事先设计好的程序,将一组输入的数字序列通过 一定的运算后转变为另一组输出的数字序列,从而改变信号的形式和内容,达到 对信号加工或滤波以符合技术指标的要求【2 8 】。 数字滤波器是数字信号处理技术应用最广泛的技术之一。近年来,随着计 算机技术和微电子器件飞跃发展,它在网络与滤波器技术中正越来越占有非常 重要的地位。 以微处理器为基础的数字滤波器通常具有加、减、乘和累加器。它与模拟滤 波器相比具有以下优点【2 9 1 : ( 1 ) 无需电子分立器件:电阻、电感、电容; ( 2 ) 性能体积比好; ( 3 ) 可靠性好; ( 4 ) 通用性好; ( 5 ) 易实现; ( 6 ) 微处理器可同时实现多种多处滤波。微处理器用于数字滤波,其速度高、 体积小、成本低,功能强大,运算精确。 武汉理上大学硕士学位论文 2 1 2f i r 滤波器和ii r 滤波器 对于般的数字滤波器,按照单位冲激响应可分为无限冲激响应i i r ( i n f i n i t e i m p u l s er e s p o n s e ) 系统和有限冲激响应f m ( f i n i t ei m p u l s er e s p o n s e ) 系统i j 。 在i i r 系统中,用有理分式表示的系统函数来逼近所需要的频率响应,即其单 位冲激响应h ( n ) 是无限长的;而在f i r 系统中,则用一个有理多项式表示的系 统函数去逼近所需要的频率响应,即其单位冲激响应h ( n ) 在有限个n 值处不为 零【3 l 】。 i i r 滤波器由于借用了模拟滤波器的结果,有大量的图表可查,可以方便、简 单、有效地完成设计,效果很好,但是其相位特性不好控制,必须用全通网络进行复 杂的相位较正,才能实现线性相位特性的要求1 3 2 l 。 f i r 滤波器则可在幅度特性随意设计的同时,保证精确、严格的线性相位特 性。这在要求相位线性信道的现代电子系统,如图像处理、数据传输等波形传递 系统中,是具有很大吸引力的。而且,其单位冲激响应是有限长的,不存在不稳定的 因素,并且可用因果系统来实现p 。 2 1 3f i r 滤波器和ii r 滤波蠢的比较 1 首先从性能上说,i i r 滤波器传输函数的极点可位于单位圆内的任何地 方,因此可用较低的阶数获得较高的选择性,所用的存贮单元少,所以经济而 效率高。但是这个高效率是以相位的非线性为代价的。选择性越好,则相位非 线性越严重i 州。相反,f i r 滤波器却可以得到严格的线性相位,然而由于f i r 滤 波器传输函数的极点固定在原点,所以只能用较高的阶数达到高的选择性;对 于同样的滤波器设计指标,f i r 滤波器所要求的阶数可以比i i r 滤波器高5 l o 倍,结果,成本较高,信号延时也较大;如果按相同豹选择性和相同的线性要 求来说,则i i r 滤波器就必须加全遥网络迸行相位校正,同样要大大增加滤波 器的节数和复杂性【3 5 1 。 2 从结构上看,i i r 滤波器必须采用递归结构,极点位置必须在单位圆内, 否则系统将不稳定。另外,在这种结构中,由于运算过程中对序列的舍入处理, 这种有限字长效应有时会引起寄生振荡。相反,f i r 滤波器主要采用非递归结构, 不论在理论上还是在实际的有限精度运算中都不存在稳定性闻题,运算误差也 较小。此外,f i r 滤波器可以采用快速傅立叶变换算法,在相同阶数的条件下, 运算速度可以快得多【j 。 武汉理一r 大学硕士学位沦文 3 从设计工具看,i i r 滤波器可以借助于模拟滤波器的成果,因此一般都 有有效的封闭形式的设计公式。窗口法虽然仅仅对窗口函数可以给出计算公式, 但计算通带阻带衰减等仍无显式表达式。般,f i r 滤波器的设计只有计算程序 可循,因此对计算工具要求较高【”l 。 4 。另外,也应看到,i i r 滤波器虽然设计简单,但主要是用于设计具有片 断常数特性的滤波器,往往脱离不了模拟滤波器的格局。而f i r 滤波器则要灵 活得多,尤其它能易于适应某些特殊的应用,因而有更大的适应性和更广阔的 天地【3 8 l 。 从上面的比较我们可以看到f i r 滤波器与i i r 滤波器各有所长,所以在实际 应用时应该从多方面考虑来加以选择。因为f i r 滤波器主要采用非递归结构, 因而从理论上以及从实际的有限精度的运算中,有限精度误差也比较小,并且 系统是因果系统,而且f i r 滤波器设计灵活【3 9 1 。 本文要设计的音频处理器主要是实现滤波器的功能,根据上面对f i r 滤波器 和i i r 滤波器的算法研究和性能比较,我们采用f i r 滤波器来实现音频处理器 的滤波功能。 2 2f i r 滤波器的算法研究及改良 2 2 1 普通f i r 滤波算法 n 阶f i r 滤波器可以用下面的线性卷积表示i 柏】: y 例2 乏办协似一动 x ( n ) 是输入的音频序列,而y ( n ) 是经过滤波后输出的音频序列,h ( k ) 是n 阶 滤波器的系数。 简单的实现这个算法,需要n 次的乘法和n 一1 次的加法。所以至少需要一 个硬件乘法器和一个定点或者浮点加法器来实现这个功能。由于音频处理芯片 只需要做线性卷积,所以我们不需要采用乘法器的结构。一般来说,由于乘法 器庞大的结构,占用了系统芯片上的大部分面积,消耗了大部分功率。而不使 用乘法器的结构将会节约可观的芯片面积和功耗。为了实现这种结构,我们需 要改良f i r 滤波算法。 9 武汉理j 1 :人学硕士学位论文 2 2 2 改良滤波算法 音频采样包括两个重要的参数即采样频率和采样数据位数。采样频率即对声 音每秒钟采样的次数。通常,人类听觉的带宽为2 0 2 0 k i - i z ,目前常用的采样 率为4 4 k h z 。采样频率越高音质越好,存贮数据量越大。c d 唱片采样率为 4 4 1 k h z ,达到了目前最好的听觉效果。采样数据位数即每个采样点的数据表示 范围,目前常用的有8 位、1 2 位和1 6 位三种。不同的采样数据位数决定了不同 的音质,采样位数越高,存贮数据量越大,音质也越好。c d 唱片采用了双声道 1 6 位采样,采样率为4 4 1 k h z ,因而达到了专业级水平。 本文所设计的f i r 滤波器的性能指标为:阶数n :8 ;采样频率:4 4 1 k h z ; 频率范围:2 0 2 0 k h z ;采样数据位数:1 6 位。根据所确定的滤波器性能指标, 得到一组滤波器系数:h ( o ) = 0 3 7 6 1 :h ( 1 ) = 0 3 0 8 3 ;h ( 2 ) = 一0 9 4 2 4 4 1 0 ;h ( 3 ) = 0 6 4 3 9 1 0 ;h ( 4 ) = - 0 3 3 0 8 8 1 0 ;h ( 5 ) = 0 1 6 6 3 1 0 1 ;h ( 6 ) = 一0 4 1 3 5 4 1 0 ;h ( 7 ) = 0 1 8 7 7 1 f f 2 。 为了将f i r 滤波器传统算法进行改良,首先,将滤波器的系数用浮点数表示 法来表示: 例如:假设滤波器的某一系数为0 1 1 7 2 ,则可以表示为0 1 1 7 2 = 2 1 - 2 1 - 2 1 6 将给出8 阶滤波器的一组系数使用浮点数表示法来表示( 精度小于1 0 - 4 ) : h f = 0 3 7 6 1 = 2 1 2 3 + 2 1 0 + 2 t 1 3 2 1 5 h f l l :0 3 0 8 3 = 2 2 + 2 - 4 2 - 8 2 1 2 h ( 2 ) = 0 9 4 2 4 1 0 = 2 - 3 + - 2 小 h ( 3 ) = 0 6 4 3 9 1 0 一 = 2 - 4 + 2 - 9 - 2 1 4 h = 0 3 3 0 8 1 0 1 = 2 - l 2 4 + 2 1 3 h ( 5 ) = 0 。1 6 6 3 1 0 1 = 2 击+ 2 1 0 + 2 。1 5 h = 0 4 1 3 5 1 0 2 = 2 一2 _ 1 2 + 2 1 6 m 7 1 = 0 1 8 7 7 1 0 之 = 2 - 9 2 1 4 2 - 1 6 根据n 阶f 限滤波器的公式: n 一- 1 y ( n ) 一 j h ( k ) x ( n k ) 局 n = 8 时,将滤波器的输出表示为: y ( n ) = ( 2 - 1 _ 2 3 + 2 1 0 + 2 l t a 2 + 1 5 ) + x ( n ) + ( 2 之+ 2 4 _ 2 - s _ 2 1 2 ) + x ( n 1 ) + ( - 2 + 3 + 2 - s 2 1 1 ) 8x ( n 2 ) l o 武汉理 大学硕士学位论文 + ( 2 。4 + 2 - 9 2 - 1 4 ) + x ( n 3 ) + ( 2 - 5 2 - 9 + 2 1 3 ) 8x ( n 4 ) + ( 2 6 + 2 1 0 + 2 1 5 ) + x ( n 5 ) + ( 2 。8 2 。1 2 十2 。1 6 ) 4x ( n 一6 ) + ( 2 一一2 d 4 2 。1 6 ) + x ( n 7 ) 很明显,x ( n ) 的系数全部都是2 的负k 次幂,所以我们可以把具有相同系数 的x ( n ) 合并起来。 y ( 1 1 ) = 2 。1 ( 2 。1 ( 2 。1 ( 2 - 1 u 1 + u 2 ) + u 3 ) + ) + u 1 6 ) 将相同系数合并后表示为: y ( n ) = 2 1 ( x ( n ) + 2 “( x ( n 1 ) + 2 4 ( - x ( n ) - x ( n - 2 ) + 2 “( x ( n - 1 ) + x ( n - 3 ) + 2 - 1 ( x ( n - 2 ) x ( n 4 ) + 2 “( x ( n - 5 ) + 2 1m + 2 ( - x ( n - 1 ) - x ( n - 6 ) + ( x ( n - 3 ) 一x ( n - 4 ) + x ( n - 7 ) + 2 “( x ( n ) + x ( n - 5 ) + 2 “( x ( n 2 ) + 2 “( - x ( n - 1 ) - x ( n 6 ) + 2 1 ( x ( ) + x ( n 一4 ) + 2 “( - x ( n - 3 ) - x ( n - 7 ) + 2 1 ( - x ( n ) + x ( i 卜5 ) + 2 。1 ( x ( n 一6 ) x ( n - 7 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) 由前面的系数,可以得到: u 1 = x ( n 6 ) x ( n 7 ) ; u 2 = 一x ( n ) + x ( n 5 ) ; u 3 = - x ( n - 3 ) - x ( n - 7 ) ; u 4 = x ( n ) + x ( n 4 ) ; u 5 = x ( n - 1 ) 一x ( n 6 ) ; u 6 = 一x ( n 一2 ) ; u 7 = x ( n ) + x ( n 一5 ) ; u 8 = x ( n - 3 ) - x ( n - 4 ) + x ( n 一7 ) ; 武汉理工大学硕十学位论文 u 9 = 一x ( n - 1 ) 一x ( n 一6 ) ; u 1 0 2 o : u l l = x ( n - 5 ) ; u 1 2 = x ( n 一2 ) - x ( n 一4 ) ; u 1 3 :x ( n - 1 ) + x ( n 一3 ) ; u 1 4 = 一x ( n ) x ( n - 2 ) ; u l s = x ( n 1 ) ; u 1 6 = x ( b ) ; 按照这个算法,先求u l 的值,然后将结果右移一位,再将结果与u 2 的值 相加,依此类推,即可得到y ( n ) 。可以看出一共有2 8 个操作数。通过使用若干 次加法和1 6 次移位操作即可完成f i r 滤波,算法的复杂度和功耗都大大地降低。 2 2 3 算法比较 通过以上的算法改良,可以看出实现一个8 阶f i r 滤波器,普通的算法需要 8 次的乘法和7 次的加法。所以至少需要一个硬件乘法器和一个定点或者浮点加 法器来实现这个功能。而经过改良后的滤波算法则只需要若干次加法和1 6 次移 位操作即可完成f i r 滤波,这使得算法的复杂度和功耗都大大降低,也使芯片 的面积大大节约。 武汉理上人学硕十学位论文 第3 章音频处理器的结构设计 3 1f p g a 的开发流程 本文提出一种基于f p g a 来设计实现音频处理器的方案,通过硬件描述语言 v h d l 完成程序设计,最后利用软件m a x p l u s 来对设计结果进行仿真和验证。 利用f p g a 设计开发a s i c 芯片的过程般分为系统功能分析、f o 分配、设计 输入、功能仿真、设计实现等步骤,设计流程如图3 - 1 所示。 图3 - 1f p g a 开发流程图 武汉理j :大学硕士学位论文 3 2 音频处理器的结构设计 3 2 1 系统功能分析 本文设计的音频处理器的功能是将来自外部a d c 的串行输入的数据进行串 并转换,得到1 6 b i t 的并行数据,并对此并行数据进行滤波处理。滤波处理是利 用相加移位算法来实现的。将滤波处理后的并行数据再进行并串转换输出给 d a c 。 本文主要改善了对于输入的音频信号进行数字滤波输出的功能。通过对数字 滤波器算法的研究以及对f i r 滤波器和i i r 滤波器的比较,我们采用f i r 滤波器 来实现音频处理器的滤波功能,对于f i r 滤波器的传统算法,实现8 阶f i r 滤 波器需要8 次乘法和7 次加法运算,所以至少需要一个硬件乘法器和一个定点 或者浮点加法器来实现这个功能,由于乘法器具有庞大的体积,而且对数据的 处理慢,所以会影响到系统的体积、功耗和处理速度。对算法进行改良后,只 需要若干次加法和1 6 次移位算法就可以实现滤波功能,所以很大程度改善了音 频处理器的滤波效果,降低了系统体积和功耗。 3 2 2 结构设计 音频处理器从外部a d c 接收到的串行输入数据需要转化成并行数据进行处 理,所以需要用到一个串并转换模块s e r i a l p a m u e ! ,s e r i a l p a r a l l e l 输出的数据应 该是1 6 b i t ( 8 阶f i r 滤波器,1 6 比特的采样精度) 。1 6 b i t 的输入数据应该存储 在一个8 * 1 6 b i t 的r a m 中,所以需要一个8 * 1 6 b i t 的d a t a r a m 模块来存放经过串 并转换模块输出的数据。 音频处理器还需要一个3 2 * 6 b i t 的r a m 来存储f i r 滤波器的系数,所以还 需要一个p r o g r a m r a m 模块。 通过对传统f i r 滤波器算法的改良,只需要进行若干次加法和移位操作就可 以实现f i r 滤波器的卷积运算,所以还需要一个加法器和一个移位器,加法器 的结果输入到移位器,移位器的输出再反馈到加法器的输入端,循环运算实现 滤波器功能。所以需要一个加法移位a d d s h i f t 模块。为避免运算过程产生溢出, 采用2 0 b i t 的加法器和移位器,所以在加法器之前需要对1 6 b i t 的数据进行符号 扩展,还需要一个符号扩展模块s i g n e x t e n s i o n 。 武汉理工大学硕士学位论文 经过加法移位a d d s h i f l 模块处理完的数据需要输出给音频处理器外部的 d a c ,所以还需要并串转换模块p 甜a l | e l2 s e r i a l ,将经过滤波处理完的2 0 b i t 并 行数据串行输出。 整个音频处理器需要一个主控器m a i n c o n t r o l l e r 模块,用来协调和控制其他 模块的工作。 考虑到音频处理器的可扩展性,我们在音频处理器外设置一个e e p r o m 用 来存放系数,当音频处理器启动的时候,从e e p r o m 中将数据转存到 p r o g r a m r a m 中,以适应不同f i r 滤波器的系数,极大地增强了音频处理器的 可编程性。音频处理器的结构框图如图3 2 所示。 3 2 2 1i o 分配 本文要设计的音频处理器在输入端需要与一个串行a d c 通信,而在输出端 需要与串行d a c 通信。所以在内部输入端需要进行串并转换,而在内部输出端 需要进行并串转换。 首先考虑音频处理器的输入端,由于从串行a d c 接收的数据是串行输入, 所以从a d c 来的信号有数据时钟d a t a _,输入数据,帧同步信号_ o kd a t a _ i n f r a m e s y n c 。 在音频处理器的输出端,经过处理的数据要输出给并行d a c ,需要进行并 串转换,串行输出的数据为d a t ao u t 。 音频处理器还需要一个系统时钟o k 输入,用来控制内部工作时序。r e s e t 是实现对系统的复位。音频处理器的主要对外端口如表3 - 1 所示。 表3 - 1 主要端口说明 信号端口宽度( b i t )功能 c l k输入1系统时钟 r e s e t输入 1系统重置,低电平有效 l o a d输入1系统启动时,将数据从e e p r o m 中转存到 p r o g r a m r a m 中 d a t ac l k输入1数据时钟,由a d c 送入 d a t ai n输入1采样信号的串行输入 f r a m e s y n c输入 l d a t e _ i n 信号的帧控制信号 d a t ao u t输出l数据串行输出 武汉理工人学硕十学位论文 图3 - 2 音频处理器的结构框图 1 6 武汉理一r :大学硕士学位论文 3 2 22 寻址方式设计 首先分析数据存储模块d a t a r a m 中数据的存储方式: d a t a r a m 中的内容如图3 - 3 所示。 图3 0d a t a r a m 中的内容 b a s e a d d r e s s 总是指向d a t a r a m 中最早写入的值所在的地址,也就是x ( n 7 ) 的地址,而v _ i r t u a l a d d r e s s 是其它值相对于x ( n - 7 ) 的地址,所以可以得出操作数 在d a t a r a m 中实际的地址: p h y s i c a l a d d r e s s = b a s c a d d r e s s + v i r t u a l a d d r e s s 在系统启动时,e e p r o m 中储存的系统参数值,包括输入信号在d a t a r a m 中的地址值和相应的标志位0 2 6 b i 0 ,依次读入p r o g r a m r a m 中去。 p r o g r a m r a m 中存储的系统参数是6 b i t 的数据,内容如图3 4 所示。 h i g h z e r o l o w s i g n s h i f t v i r t u a la d d r e s s l b i ti b i ti b i t 3 b i t 图3 - 4p r o

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论