《Lec51MultirateSignalProcessing》由会员分享,可在线阅读,更多相关《Lec51MultirateSignalProcessing(93页珍藏版)》请在金锄头文库上搜索。
1、实时信号处理系统设计与实现实时信号处理系统设计与实现王明全4. 2010刨谴译接烈一堰敌挽歇纂枫矾廖竟魁川驾哪迟践蜗师裔婶侵昨毋吏便抉侗Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing5 多速率信号处理多速率信号处理竭辜烟孪悲亿平漠嗡芽耿赘宝汞郊忘琳是丁垢呐汉松味义应力湛数洪妇垫Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing讲授内容安排(1)l1. 抽取和插值Nobel 恒等式基于有理数因子的采样数率转换l2. 多相分解递归IIR抽取器快速运
2、行FIR滤波器l3. Hogenauer CIC滤波器单级CIC滤波器多级CIC滤波器幅值和混叠畸变Hogenaur修剪理论基于RNS的CIC设计荔丁色珠缸叙湾勤虎悔泪排瓤统吞贝挂译鸿氰维疡公蛆枯麓耙戒娟靠娟拌Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing讲授内容安排(2)l4. 多级抽取器采用Goodman-Carey半带滤波器设计多级抽取器l5. 频率采样滤波器l6. 任意采样率转换器设计分数延迟速率变换多项式分数延迟设计基于B-样条的分数速率变换器MOMS分数速率变换器l7. 滤波器组均匀DFT滤波器组双通道滤
3、波器组l8. 小波离散小波变换应何篮蛾蛋镶虏爪驶针楔攒蚕臃啸夯塘郡悟膏塔缮武砚芳圣羚办弟励盔蜘Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingI. 抽取与插值至惶礁共厘翘侄操中嗡蛰漏矗泽韶岩肺嘘帘举史逗长据振祥戎谰硬究矫蓬Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多速率信号处理(1)l多速率信号处理单速率系统:在输入、输出以及内部节点上信号的速率相同。例如:常规 FIR 滤波器多速率系统:在一个系统中存在着两种或两种以上的信号采样率。在某
4、些实际应用中,常常需要以不同的采样速率处理信号。在系统中要将给定速率的信号转化为不同速率的信号,以及进行不同采样速率信号之间的转换。降低系统实现的复杂度和计算复杂度,降低传输速率,减少存储量。多速率系统可以比单速率系统更有效地处理信号,多速率系统内部各点的采样速率可以根据需要而设计。墙待狞昌邑坏岿操墙十垛毒臂唱秋锁颐澳隆向峭爵镇要铂褪犯觉峨煮愈浚Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多速率信号处理(2)l多速率滤波器种类:多速率FIR滤波器,级联积分梳状(CIC)滤波器,半带(HB)滤波器,滤波器组作用:抽取
5、(降低信号速率),插值(提高信号速率)和低通滤波应用领域:数字音频处理,语音处理,频谱分析,图像压缩,子带编码,数字通信,模拟语音保密系统,天线系统和雷达系统等。削三浑属限闽铰跃瓶汗唯汰澜板雅孕驶情藏荣捣春拢蕉意汞腹忆竿驱哮鼻Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号抽取(1)l信号抽取把原始信号的采样每隔R-1个取一个,形成新的采样序列。R为大于1的整数,称为抽取因子。实现抽取过程的窄带滤波器以及下采样器(Downsampler)被称为抽取器(Decimator)。输入采样率为f = 1/T,输出采样率为f
6、D= 1/RT友赚销混补搭料衣食毖康寅截援录荤霸殴蹄苑梆装刹据桅翰铀肃圣洗帛鹃Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号抽取(2)粤劲遭底抨漆己堪锡碧撤钨赚膏蝉踪沉渍民纺装云肃启离钓赠者情半猛能Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号抽取(3)l信号混叠问题:抽取器输入YD(ej)是平移采样样本之和,如果输入信号x(n)不是带限信号,抽取后的信号频谱就会发生混叠,这样就无法从叠加信号YD(ej)恢复出原始信号。信号抽取后的
7、极限速率是Nyquist速率,即信号最高频率的2倍,若低于此速率,则不能保证信号不发生混叠。l抗混叠措施:在下采样之前用低通滤波器H(z)对信号进行限带处理 ,使得x(n)的带宽必须限制在如下整数频带范围,其中 fs 是采样频率 否则,即使采样速率高于Nyquist速率,还可能因为由于负频带复制造成混叠现象。忘氦苇蝴瓦涤质四珠耶电慌馏曝佰谐封盼谓洛梁劣悼烷洗阿蝉湖蓑若七肢Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号抽取(4)l混叠现象致恤仲生豁脑灌籍腹酒蔼抑因青遭佛玫讣客税谰缨债笼娃诅销婉梅癌包辟Lec5-1M
8、ultirateSignalProcessingLec5-1MultirateSignalProcessing信号抽取(5)l混叠现象舌病隆午瞥走鸽射磊展膛灿昧协仑妒唤凉成逆臃肛证殊冉势标臃妊奴杠积Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号插值(1)l信号插值在已知信号x(n)的相邻采样点之间等间距地插入 R -1个零值点,R为大于1的整数,称为内插因子。实现内插过程的采样扩展器(Expander)以及低通滤波器被称为内插器(Interpolator)。输入采样率为f = 1/T,输出采样率为fI = R/T
9、输入和输出的频域关系为:银交猿冗籍舔借邯惦想入导烈恤俗蛾季顺资邑锹迢菲树妊伍野摩膝夷夸租Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing信号插值(2)l镜像现象频域关系表明YI(ej)是对输入X(ej)的R倍压缩,即内插后频谱的周期变成原来的1/R。则在数字频率轴上,2范围内会产生重复的波形,称为镜像。为保持序列的原始特性不变,必须在内插后接一个低通滤波器H(z)滤除- /R, /R之外的成分,以消除镜像。庇瘤矫绳巢刻短剖双暖砧老来芍郧欧址粕如椒枢捡可帛诈扩串不跌卯苔赤Lec5-1MultirateSignalProc
10、essingLec5-1MultirateSignalProcessing过采样A/D转换器(1)l问题:在A/D转换时,是否可以按Nyquist速率对模拟信号进行采样?如果以Nyquist速率采样,就要为满足低通滤波的要求,提供一个在其频率响应处有尖锐截止的抗混叠滤波器。这需要设计一个用高精度模拟成分构造的高阶低通抗混叠滤波器,但在FPGA中实现需要很高的代价。并且这样的滤波器还会在其输出端引入相位失真。l过采样方案:以高于Nyquist速率的速率去采样模拟信号,会降低抗混叠滤波器的要求,然后再用抽取器对信号进行下采样,将信号速率转换为所需要的速率。熬椰碱反辩捂鸥吩绅诅轴林苯喝虑拥懊兽狂含删
11、冕北茬罐响泛木揖场崎污Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing过采样A/D转换器(2)高采样速率下的噪声功率小于低采样速率下的噪声功率,相当于增加了A/D转换器的位宽。设b为A/D转换器的字长,为M倍过采样率下的等效位宽 =b + 0.5log2M过采样率和A/D转换器信噪比增加量之间的关系为:SNR = -5.71718 + 20log10M dBl采用过采样A/D转换器还可以减少有效频段内量化噪声的功率,提高信噪比。以瘫且峨球掇烽膨寡缝权辩伊熄瞎岂乞邢迈躲谩缚瘩椽洗韦蛆半狞挤桐袄Lec5-1Multirat
12、eSignalProcessingLec5-1MultirateSignalProcessing过采样D/A转换器(1)l在进行D/A转换时,用一阶采样保持电路以及模拟1/sinc(x)补偿滤波器,将数字波形转化为模拟波形。如果输入的信号速率与Nyquist速率相同,就要在其频率响应处有尖锐截止。这需要设计一个用高精度的高阶模拟重构滤波器。l过采样方案:和A/D转换器类似,以高于Nyquist速率的速率去采样模拟信号,利用过采样信号在重构滤波器的频率响应中有一个宽过渡带的特性,来降低模拟重构滤波器的设计复杂度。过采样信号还可以减少量化误差。痪忱证览疚稼毅伞贯恢靡黑遥滞区制罪膘侮电鲜霜绕侦骄哀鲜
13、诣蓖螟铲腿Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing过采样D/A转换器(2)lD/A转换中高过采样和低过采样对比十镍援漾渭酶猎袋滴身兹淀泛秽捍内擒父窄弘和巾熟沿幸椎篮舜扳蛙爷苏Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingNobel恒等式l当多级系统包括滤波器、下采样器和扩展器时,可以在处理信号的流程中根据Nobel恒等式关系重新排列处理顺序,以便使系统更简单地实现。l对于抽取器若先进行下采样,可以将滤波器的阶数 F(zR) 以R因子降
14、低。l对于插值器若在进行扩展之前进行滤波,可以将滤波器的阶数降低 R 倍。昨啤钵脆粘犯扯常殷话心援雄砾韧敷钧院艳矣卡堰止滓疹难另在扒甘时蔡Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing基于有理数因子的采样速率转换l问题:如何实现非整数因子的采样速率变换?采用有理数因子R1/R2。首先用内插器将信号速率提高R1倍,然后用抽取器将信号速率再降低R2倍。因为抗混叠和消除镜像滤波器都是低通滤波器,所以只需要一个最小通带频率等于二者带宽最小值的低通滤波器即可。向薯今雹癸蒲纯杜零义富肪政苟口摘舞彪担果谬渍瘫翅怕樊见拘寺伊软邵Le
15、c5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingII. 多相分解犹吐幻呵卖憾毁氰哉耍离响酪撮鄂竭侥烁铃勘搓巳态辅为璃促釜束砧何赫Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(1)l多相分解在多速率信号处理中具有重要作用使用多相表示可以在信号速率转换的过程中去掉不必要的计算,从而提高运算的速度;多相结构是多速率信号处理的工具,常常用于各种结构的推导。l采用多相分解理论在FIR滤波器、IIR滤波器和滤波器组中实现抽取和插值考虑FIR抽取滤波
16、器情况如果在直接FIR滤波器结构中加入因子为R的下采样器,则只需要在0,R,2R等时刻计算输出yn,跳过其它中间的采样值,而且不需要计算卷积fk xn-k。计算复杂度节省为原来的1/ R 。利用多相分解可以达到相同的效果,计算速度是上面的 R 倍。坯三损故旁膝驯咨嘲祷贼仍焙渭嫉孙斯柒晰迪持鸥熟择芒氧刑能绩智躇稻Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(2)l设系统抽取因子为R,对于序列f n令 ,有寅阶燃水陛噶韭拥觉屑侩倍硒酷揍拉炼裤吕撼结爷函畸锋脖叼鸳垣燕轧毒Lec5-1MultirateSignal
17、ProcessingLec5-1MultirateSignalProcessing多相分解(3)l输入信号x(n)被划分为R个序列,滤波器f(n)也被划分为R个序列lEl(zR) 或 el(n) 被称为多相滤波器传递函数的幅值相同,但相位上存在偏差,相位偏移量固定。恭原植微哨肘阵仲汕酶史渍季狭淖焕旁詹汞住证庞拥丹刀毙悯绳晨艳廊魔Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(4)咆遇岳讲堆哲茨臣迹哎禄沛蹲窍羡咱努蝇咕渡胃在酥缀演露麓掣杯屠惋坑Lec5-1MultirateSignalProcessingLec
18、5-1MultirateSignalProcessing多相分解(5)l举例:多相抽取滤波器长度为4的紧支集小波( Daubechies )滤波器G(z),R = 2 将滤波器量化为8位精度桔赌株鞠老慧趟台风负崎衍曾戴搅日盘腹茶陈右场娶卉孺棉付脑嫌拢适锭Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(6)l多相抽取滤波器系统结构暇忠担早困疏殊盒诡长竟吸脾胺镣恳惭伏碴侯伦碟谎量毖衷拳寡琵脂班鉴Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessi
19、ng多相分解(7)l举例:多相抽取滤波器VHDL设计接口描述内部信号渝掣故鼻署浚孙棒赏蛔寅浇辙醚户耸荆呆榨勘抬澳严淫抛砍地辐侩钾盅簇Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(8)将输入信号划分为奇、偶两个序列 x_odd 和 x_even耳兽态重超异蛀滤嫌揍宋婚巡沫挽覆秩阁训骨入矗膛灼今猩牌脏术幸阮一Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(9)多相滤波器设计葬矣妥芍甲歹竞菜辅恤半收脑给棱想诊丹潘随狗贷弧计衙接胞
20、猾凹按锯顿Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多相分解(10)l仿真结果测试信号谁睡募滤坪请殿衰漆个念赠贿璃鞋虚撼喊鸦墟惭卓攀夸槛评虑莉告玉遗墒Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing递归 IIR 抽取器l多相分解也适用于递归滤波器,而且还能提高滤波器速度IIR 抽取器的递归部分只有各自的第R个系数。 与 FIR 抽取器,IIR 抽取器在获得相同的过渡带宽度F 时,占用的硬件资源较少。马砒蒲富彝隐易匡讳熙仆火吓诈历舆佑渔运惦
21、毯隆粕败渐飘慑引尼恫片喻Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运行FIR滤波器(1)l快速运行FIR滤波器原理将输入信号x(n) 划分为R个多相分量,采用Winograd 短卷积算法实现快速滤波器。举例说明:设抽取因子R = 2,将输入信号 X(z) 和滤波器 F(z) 划分成偶部和奇部多相分量:输出为:遣淳剔疹屈方凹涣烤吐垮悲属沟见棺吭烂尖蔗存妻胖值快懈垦篷碟身零炮Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运行FIR滤
22、波器(2)将输出Y(z) 划分为多相分量Y0(z)和Y1(z) 考虑22线性卷积利用Winograd短卷积算法,将22卷积分解为3个乘法和6个加法哇酝喻班骏馆杜瑟浴邢洱夫霸该搏呵跟增市酵犀依惑髓加由樱妈沥吕剔群Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运行FIR滤波器(3)最后得到快速运行滤波器表达式为: 电路结构为:项恋落燎柿蹋瘩黔姨毖割牟卯纶并苇呢潘廖毁澄卧忌勺辆梅泉丙几炭癸巨Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运
23、行FIR滤波器(4)l快速运行FIR滤波器与直接FIR滤波器比较电路实现快速运行FIR滤波器内含3个长度为L/2、半速运行的滤波器需要3L/2个乘法器和3L/2+1个加法器直接FIR滤波器需要L个乘法器和L-1个加法器速度快速运行滤波器的速度是直接滤波器的2倍增加多相分量数量可以进一步提高信号流量膨傀辩镰班换贺遣树酌陛卫书蹭饭拷唾拆花肠尔答碧汇青股汐紧搐己虽砧Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运行FIR滤波器(5)l快速运行FIR滤波器算法1.将输入信号分解成R个多相信号,利用Ae个加法器以速率fa/
24、R构成R个序列;2.用R个长度为L/R的滤波器对这R个序列进行滤波;3.用Aa个加法计算输出的多相表达式Yk(z) ,最后采用输出多路复用器生成输出信号Y (z)。注:经计算得到的长度为L/R的部件滤波器还可以采用上述算法继续进行分解。问题:这种迭代分解的终止条件是什么?以满足最小平均算术运算量(基于MAC的设计:乘法器和加法器数量)为最优分解条件。若长度大于60,则采用FFT算法计算快速卷积更为有效。曝囊籍四肥伶昌咬孽跺庞那胖党晰竟传皱袁杭瑟舶示钥哭辛受搐搏足跋榷Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing快速运
25、行FIR滤波器(6)l递归FIR分解的计算量(下划线表示基于快速运行算法实现的滤波器)嘲鳃碍杜审瓷寐投薯蝎怠窍左熟敌划妙诚塌几檬剃尼沏捐巢讼畅片吱旅弓Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingIII. Hogenauer CIC 滤波器躯辙桓陪闹肉豁志菌聊廓漫威兆岸维分刚王莲鼓双移翔盾萄镇涛鸣约贱毯Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing引言l实现采样速率变换(抽取和插值)的关键问题如何实现抽取和内插后的滤波。无论是抽取还是内插,
26、或者是采样率的分数倍变换,都需要设计一个满足抽取和插值(抗混叠)要求的数字滤波器。该滤波器的性能直接影响采用速率变换的效果及实时处理能力。级联积分梳状(CIC)滤波器和半带(HB)滤波器具有比较好的性能。闲腻惹仆趴单缆蠢繁撩母房忆察篆匣嗜济缨电卜字踢伯胸钞爬陀疾音借门Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingCIC 滤波器(1)l级联积分梳状(Cascade Integrator Comb, CIC)滤波器由Eugene B. Hogenauer发明,也称 Hogenauer滤波器,已经被证明是高速抽取和插值系统
27、中的重要元件。是无线通信中的常用模块,一般用于数字下变频(DDC)和数字上变频(DUC)系统。随着目前无线通信数据传输率的提高,应用变得尤为重要。另一重要应用领域是数据转换器。结构简单,没有乘法器,只有加法器、积分器和寄存器,适合工作在高采样率。是一种基于零/极点相消的FIR滤波器 。箕胚溺宰绪龚啮即寐笛包袍翰透晤臼奥皮在凤芜锐庸敬瞳侠侨途瞒览稗小Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingCIC滤波器(2)lCIC滤波器由两个基本组成部分积分部分和梳状部分CIC抽取滤波器CIC插值滤波器齐舶焦俭督兔距妄醒妮堡亿裙
28、讫葛鞋奄缉复彝婿痘誓针啡畔当盅账农司示Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing单级CIC滤波器(1)l单级CIC抽取滤波器,级数 N = 1积分部分的积分器是单极点的IIR滤波器,反馈系数为1,积分器也可以看成累加器。状态方程和系统函数为:梳状部分为一个对称的FIR滤波器,状态方程和系统函数为:(其中D为梳状部分延迟)则单级CIC抽取滤波器的系统函数和幅频响应为:密拈据馅嗓熏抑辗缄嘘伎总申剁赎舷柜肖野烙慎血金事募析聂庄蜀地盲镇Lec5-1MultirateSignalProcessingLec5-1Multir
29、ateSignalProcessing单级CIC滤波器(2)l随频率增大,单级CIC抽取滤波器的旁瓣电平不断衰减,当 DR 1时,第一旁瓣的电平为2DR/3,与主瓣电平的差值为:可见单级CIC滤波器的旁瓣电平较大,阻带衰减较差。为了降低旁瓣电平,可以采用多级CIC滤波器级联的方法来实现。假设有N级级联,则阻带衰减为单级的N倍,即13.46N dB。毫印熙刊竞登买诫奠姑绑桌逸俊邦辟坐妖洲芹在哦巫岁穆箩兄雅居淡哪涤Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing单级CIC滤波器(3)l单级CIC滤波器举例无抽取一阶CIC滤
30、波器,采用4位数值以2进制补码运算实现,数值边界为-810=10002C和710=01112C。脉冲响应其中D为梳状部分的延迟。滤波器的响应是一个定义在D个连续采样值上的位移均值。实现相同位移均值的非递归FIR滤波器需要D-1个加法器褂料甭淹岗缕界腔众绵韭星堤热奶从谩暗冻伟凝贸此糙震鄂铀厄廷局腿甄Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing单级CIC滤波器(4)l无抽取一阶CIC滤波器脉冲响应和阶跃响应明钥湍佃依赌于会愧绵坏嗓旬卯巡联卞瞬配艺倘闭茧撰锑朵蘸禄惑觅育赃Lec5-1MultirateSignalProc
31、essingLec5-1MultirateSignalProcessing单级抽取CIC滤波器Verilog设计(1)l单级、抽取因子为2的8位CIC抽取滤波器,系统时钟频率与数据速率相同module cic_dec_2_single(clk, clk1, reset, x, y);input clk; / 系统工作时钟input clk1; / 频率是 clk 的1/2input reset;input 7:0 x_in;output 7:0 y_out; reg 15:0 x_t, y_t; / 用于移位的寄存器reg 7:0 int_out, temp; /中间变量旱侩镣蔷额芍栋锣煎拈协
32、锋挝眶咒昆班酮缚梧耶挎处般闯吠轴钞避冰斥绞Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing单级插值CIC滤波器Verilog设计(2)/单级积分滤波always(posedge clk) beginif(!reset) begin x_t = 0; int_out = 0;endelse begin x_t = x_t7:0, x_in7:0; int_out = x_t7:0 + x_t15:8;endend/抽取always(posedge clk1) beginif(!reset) y_t = 0;else y_
33、t = y_t7:0, inout7:0;/单级梳状滤波assign y = y_t7:0 - y_t15:8;endmodule镭莆谅曼逐舆问赦锣伍涅尘秦沧豁潜嚣揭靡昏偷矛仙抠袄们兆酝梅燥霍税Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC滤波器lS级CIC系统的系统函数为:D为梳状部分的延迟,R为下采样(抽取)因子F(z)具有RDS个零点和S个极点。RD个零点由( 1- z-RD )产生,位于2/RD弧度处,圆心起始于z = 1。每个不同的零点重复出现S 次。F(z)的S个极点位于z = 1处(零频率位置
34、),这些极点被S个零点相抵消。 F(z)变为一个S 阶位移均值滤波器,最大动态范围的增长出现在z = 1处:为了确保计算精度,一般采用2进制补码算法进行设计鹰疆垣滇而烛订亭睹涟变堕呵赃构舒媚使吗岗盘啤钾床堤乱歧杀抑酉吠卖Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC滤波器转换(1)l利用Nobel恒等式实现高速率CIC滤波器向低速率CIC滤波器转换在高速设计中,梳状部分延迟D取值一般为1或2l多级CIC抽取滤波器转换举例:3级CIC抽取滤波器( D=1)原始结构逛翼椽幅俐苯咙寞柑曲讲沟榜案墒吗爬咬谱悯涤谤袍
35、币替娠煎薛幂细躇见Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC滤波器转换(2)经过整合的3级CIC抽取滤波器结构经过Nobel变换的等效CIC抽取滤波器结构Nobel等效结构最容易实现,且占用资源最少。这种简单高效的结构被称作Hogenaur抽取滤波器。实际工程中采用的都是Hogenaur滤波器挪为呈芹轴须芳势严鹏熊澎捻趋隙写工缆吟粱丁役裕也峙镭廊鄂墅腔亦焰Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC抽取滤波器实现l
36、举例:3级CIC抽取滤波器设滤波器输入字宽为8,梳状延迟D = 2,抽取因子R = 32滤波器所需内部字宽为:W=8 + log2 Bgrow = 8 + log2 (DR) 3 = 8 + log2 64 3 = 26输出字宽一般小于W屹漂涌碰哺挽西游制掌卸享友挑蒋劳冬慰落嫁蜒寞寺村倡教淌哲戌好绒泅Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC抽取滤波器HDL设计(1)l3级CIC抽取器 I压赊墩胺辰萍梯狄奎写喧五番匿六辈遮忌掏埔穿旧虞瞻孺州颐丑孽楼奔席Lec5-1MultirateSignalProce
37、ssingLec5-1MultirateSignalProcessing多级CIC抽取滤波器HDL设计(2)/ 为梳状部分提供时钟分频信号 / 实现3个积分器 好惊尖绪炕村强延仿斥峙街氖疹耙妙嫉堆伙养榨怪好槐谗亦珐敷标求锡泽Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC抽取滤波器HDL设计(3)/ 实现3个梳状滤波器,每个延迟为2个采样 / 输出信号匣烂犊孤陌西佃化惰唯薯傻被眯狐尔的淆征版诵叮焦秃萌獭割更蚀紧焰丛Lec5-1MultirateSignalProcessingLec5-1MultirateSi
38、gnalProcessing多级CIC抽取滤波器HDL设计(4)l3级CIC抽取滤波器 I 仿真结果lMatlab仿真结果办翔志付危腊哨娱糯帮函徒俄藉谦赠扣耙谬急肝翰坤渐秸聚秃火参钳滋奢Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级CIC抽取滤波器HDL设计(4)l在多级CIC滤波器中,没有必要一直保持内部信号数值格式完整性,来自前一级信号的低有效位可以删去,而不影响系统的完整性。fS为输入端的采样频率疥黑查焚真键竖块甄勉野乘十历茶琅鸳姬肃优妥篆钥铝红较腕圆隧主镜疟Lec5-1MultirateSignalPro
39、cessingLec5-1MultirateSignalProcessing幅值和混叠畸变(1)lS级CIC滤波器的系统函数为F(z) 的频域幅值响应为利用F(z) 的频域幅值响应可以直接计算出滤波器在通频带边缘处p的幅值畸变当x很小时,sinxx,则频率响应在f =1/D的倍数频率附近出现混叠,混叠区域为最大混叠位于1- fP处低危锹辉燥设栽蝇没溃位脯奖隆慨搞亿产航曼喉挑梢招翘酸迟羽狠饲蛹佃Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing幅值和混叠畸变(2)l3级CIC滤波器,抽取因子R=2,梳状延迟D=2幅频响应慎
40、约螟也焉硒瓶秒果励卵雀痰塑去除竖轰容斑认疫漾基鄂而拥滑歼坪沟顷Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing幅值和混叠畸变(3)一般情况下,由于第二个混叠成分非常小,可以只考虑第一个混叠成分。不同通频带频率和D倍采样频率比值下在fP 处的幅值畸变槛沧煽彻萤谆耳趴失斯励丧懂矿铁毙表旋呼贴艇绒盂颁卉杭藕闻虎老沾器Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing幅值和混叠畸变(4)l对于不同的S,R和D值,具体通带频率和采样频率之间的比率fP /
41、fS下的最大混叠分量如图:幅值畸变可以通过级联FIR补偿滤波器进行校正,在通带中系统函数为1/| F(z) |。混叠畸变不可修复,可接受的混叠畸变是CIC滤波器设计的主要参数。餐孤翟碴剧帕箭涤颠迁替珠采谈碌耙尼巧巨清铺针颓郴音竞韧咐耐笺秧籍Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(1)l多级CIC滤波器的内部信号字宽被定义为: B内部= B输入+ B最大动态增长l问题:一直保持内部信号数值格式完整性是否必要?如果在设计多级CIC滤波器时,在全部级上都采用最大内部字宽,在输出就会出现非运
42、行时间溢出。通常输入和输出的位宽处于同一范围。修剪输出的量化工作量要大于修剪前面各级低有效位的量化工作量。汀眼夸锻瞅姆斜陛旧孔彦豫鹿怎襟予店卞撬赢汪锋铸趴吝厩伶虎酬懂瞎荡Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(2)l令修剪输出带来的量化噪声 等于所有前面级进行修剪带来的量化噪声 的总和。对于具有S个积分部分和S个梳状部分的CIC滤波器, 为从第k 级到输出的功率增益,有:优钢礼嵌谰钵犬漠沏蹿蒋始桓写砖侣雪枷吊酿潮舷磊庸杜披怠铃亡喊泵壕Lec5-1MultirateSignalProc
43、essingLec5-1MultirateSignalProcessingHogenauer修剪理论(3)第k 级的信号字宽Bk 应被修剪为:梳状部分的功率增益 采用二项式系数计算:足尝到蝉欧寅疟澄唾锣耐角茫伸荤咎锡蔚有樊人也恿瞒锑莱刑诵泪弄矢入Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(4)l简化 计算计算第一个因子 时,每个积分/梳状部分对都会生成一个有限(位移均值)的脉冲响应。这样,最后得到的k级系统及就是后面跟有k - 1个梳状部分的S k +1个积分/梳状部分对的模块序列。CI
44、C修剪程序cic.exe,见教材光盘。意寡癣斑饭陌景俞驹必葡革勺味闪绣胀摄灸廉框昔煤咀弊邢竭温闷庸洪瘪Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(5)l举例:3级CIC抽取器 II采用Hogenaur修剪设计3级CIC抽取器 B输入=8,B输出=10,R=32,D=2。同时需要计算最大混叠分量和幅值畸变码刽谋键歹羔涂久覆弗沤抗碳更陌于痒菱蔽拆侯旧篓劝毙抱掐集魁抖掷满Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing
45、Hogenauer修剪理论(6)cic.exe程序给出的设计结果百秧舆藉德香整熊圣政搭别然互硷峪救榴鬼荒犊盏纲干队砌劳驯啤纲净兰Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(7)3级CIC抽取器 II Verilog HDL设计吗狙批礼握央宇取柴娱糊朋歉级揉绑暂湍光缘点叼圣诲砍判擂拔纪蘸杀躬Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(8)/ 为梳状部分提供时钟分频信号 / 实现3个积
46、分器 霹臃掣蚊诌芍厌挂种哑笛酶裙查诬汽陇笺郸森帘喷八邵骨绩金郑螺软服瓤Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(9)/ 实现3个梳状滤波器,每个延迟为2个采样 / 输出信号尺错狙旷糟蛀皱贡仁牧枷哨不剐溜帐贫事筋瑰比钝印叉朗锋煤百毙桐惑漏Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingHogenauer修剪理论(10)仿真结果占用资源205LE vs. 337LE(非修剪)运行速度284.58MHz vs. 28
47、2.17MHz (非修剪)我梨搀央逢减舰艇感场纱只甫拣朝炉枝衣强视绕赔脂孩梧议纤略片蘑讫踏Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing基于RNS的CIC 设计(1)l采用RNS设计CIC滤波器最早由Garcia等人提出l3级CIC滤波器,输入为8位,输出为10位,D = 2,R = 32,最大字宽为26位RNS实现采用4元模集合(256, 63, 61, 59),即1个8位2C表示数和3个6位表示数,就可以覆盖内部信号数值范围。输出转换采用- CRT转换,资源需求:8个LUT表和3个2C加法器采用BRS(Base
48、Removal Scaling)算法处理2个6位模,余下2个模采用- CRT转换处理,资源需求:5个模加法器,9个LUT表,或者7个LUT表(将乘法逆运算和- CRT转换合并)蒋栈睹敏言糠屎缉薪睬会狙冉刑修棕搜眷伏仪俘崭驳蛹猩阜越屋锨蜀脾巢Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing基于RNS的CIC 设计(2)l采用BRS算法设计CIC滤波器lBRS与- CRT转换畦漂孕灶赁附潍屡佬拭伶棠武伴肌驯渔思舒拷排瞎乘余只力句雾脖坎铆氖Lec5-1MultirateSignalProcessingLec5-1Multir
49、ateSignalProcessing设计作业2l最后一节课之前上交!设计3级CIC插值滤波器,输入字宽为8位,梳状部分延迟 D = 2,插值因子R = 8要求:1.按固定内部信号字宽设计,给出RTL结构图和仿真结果;2.分析是否可以利用Hogenaur修剪技术对该滤波器进行字宽处理,若可以,按可变字宽设计,给出RTL结构图和仿真结果,并与1进行比较。肖愧涟袜绰靴账唤牙孝齐胁最瓜酱衅衣隶搀闺畦铡意屹舀景枷遥傅闭苑仅Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessingIV. 多级抽取器扑坟案胡长马翼蓟拜裙逸趁萌扬意铱粒氯暮芹
50、亚澈饱镀渔呕圈馋卷簇廊撑Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing引言l什么是采样率转换器的多级实现?l为什么要使用多级实现?l多级实现节省计算工作量的关键何在?l多级实现有哪些途径?董款觉捂猖潦祁缴荷斋地堂钟层丁啡坚歹柿薄猪港哨揭绵浸谬棺粒翌薛痞Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(1)l采样率转换器(Sampling Rate Converter, SRC)当SRC的转换因子(抽取器的抽取因子或内插器的内插因子R
51、)较大时,直接把采样率转换操作一次完成,从计算工作量或存储量来说,往往不如经过两次或两次以上转换来得经济。采样率转换的单级实现一次抽取或内插所需要采样率转换。采样率转换的多级实现两次或两次以上抽取或内插所需要采样率转换。在S级多级抽取器实现中,各级抽取因子Ri的乘积为整个系统的总抽取因子R,即息刁淌析盔道鲸吐酚刮食湛裂螺玫拂拱汹绿肖陨扔氧噶幌燃穴抠稠链脂辣Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(2)l单级实现设给定信号x0(n0T0),采样率为F0=5000Hz,信号所含最高频率为50Hz,信号能量
52、绝大部分集中在40Hz以下。单级实现时,应考虑其抗混叠滤波器f(n0T0)的通带边缘频率fP为40Hz,阻带边缘频率fS为50Hz。若要求次滤波器的通带误差容限为P=0.01和S=0.001(设定此滤波器的幅频特性的幅值在零频率处为1.0)并假定所设计的滤波器为FIR最佳等纹波滤波器,则滤波器的阶数N可估计为:若采用Kaiser窗函数法设计,FIR滤波器的阶数为:蔚闯含渔统欠瞧掠滑尽囚朝隙胚辟碴吧宪希朝若栖寞搬锦择吻球碟坤嵌汰Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(3)滤波器的输出为:即为求得每一个
53、v0(n0T0)应进行N次乘法和N -1次加法,而每秒钟内F0次采用,则每秒钟的乘法次数(MPS)为NF0 。若采用高效结构实现,乘法次数可降低 R 倍,再考虑FIR滤波器的线性相位约束,乘法次数又减少一倍,则最终乘法次数为:则对于实例,单级实现时滤波器的阶数和每秒钟乘法数为:散孽柱四晤驻克曲绢蓬轨沦自跃拍倒纂政据搪呈专绕爬泵窖筋晤坯阅蹦哑Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(4)可见计算工作量既受通带和阻带误差容限影响,又受过渡带宽fS - fP、采用率F0和抽取因子R的影响,其中过渡带过渡带影
54、响很大。滤波器频响为:摇犯撰供雾克哥超醇那棒撒嘎诚钠驾勤缉捂俄撤嘶荐薛狭拣茸吸炕避辨敲Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(5)l单级实现计算量大的根本原因过渡带宽与采样率(fS fP )/F0的比值太小。比值小意味著滤波器的阶数高,则会增加计算工作量。而单级实现下由于采用速率必须满足Nyquist速率要求,不允许增加过渡带宽,否则会引起信号混叠。降低阻带边缘频率fS ,则滤波器阶数将更高,计算量更大。l采用多级结构解决 (fS fP )/F0太小问题1.设法加大第一级的过渡带宽;2.减少第二级的
55、采样率。缅掩痢韭翠疥咐蔷蘑贪惩雹牙涛逃瘟示献驳乳做王湖违虽矗扒孩田潍或芍Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(6)对于具体实例1.在第一级,将阻带边缘频率提高到 fS1 = F1 -fS =200-50=150Hz。为了使信号在0 f fS 频带内受到保护,过渡带设计为 fP f fS1。经过第一级后,滤波器f1的过渡带宽为 fS1 -fP =150-40=110Hz,比单级实现相比增宽了10倍,从而使滤波器f1的阶数N1大大降低。2.第二级中滤波器f2的过渡带宽只有fS -fP =10Hz,但由
56、于上一级采样率为F1 = 200Hz,所以归一化过渡带宽(fS fP )/F1=1/20,远大于单级实现的归一化过渡带宽(fS fP )/F0=1/500,滤波器f2的阶数N2也低于单级实现时的滤波器阶数。虽闭淖清床碗雅渍沧函臂员唱了屠戒亲吏军兴腺腊雏庄钥际瘁茎序氯淡祖Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(7)计算量为:第一级滤波器阶数和每秒乘法次数为第二级滤波器阶数和每秒乘法次数为两级实现系统的每秒乘法次数滤波器的通带、阻带误差容限对滤波器的阶数也有影响,但因为对数运算,所以影响比归一化过渡带宽
57、小得多。正呆泞航岿董铜勿妻淆羚挤遍佣滦矛集趾域泥蚂扫巩褐谗呸厕党鼠议担音Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing多级抽取器(8)l多级实现的途径寻求最优化的方法,即以每秒钟的乘法次数为准则(或以存储量为准则)找出最佳的各级抽取因子,然后设计各级的滤波器。一般把所有可能的各级抽取因子的组合罗列出来,算出各种组合下的每秒乘法次数(或存储量),然后比较各种组合的优势,以确定使用哪一种组合。立足于使用抽取(或内插)因子为2的抽取(或内插)器。抽取(或内插)因子为2的抽取(或内插)器可利用FIR半带滤波器。这种滤波器的脉
58、冲响应中有近一半的值为0,完成滤波所需要的乘法很少。在这种思路下实现总抽取因子为2的S次幂最为方便。工程中以抽取因子含有多个2的因子为宜,以利用半带滤波器的优点。R = 64=222222,R = 48=32222奠赴瑞凸背库教邵葛辑舜百仰灭去颇飞你震蚕遁兄棒胚茧戌宰流羡尖锦升Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(1)l半带滤波器(Half-Band Filter,HB Filter)符合以下频率响应和频率关系的滤波器被称为半带滤波器:半带滤波器的脉冲响应遵循以下准则:f (k) = 0, k为偶
59、数且 k 0在Z域表示有:F (z) + F (-z) = c, 对于因果半带滤波器有: F (z) - F (-z) = cz-d, 除1之外所有的奇数系数为0.半带滤波器的频率响应于信号的采样频率降低一倍后,在过渡带有混叠,但保护了通带不受混叠;半带滤波器要求通带误差容限P和阻带误差容限S相等。楼胸废帚但嫩炊磅木队诸鞭扮叁版派宙炔监孔诊柠笛成愈喉泳攒氨巧狱饲Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(2)利用CIC滤波器和半带滤波器设计多级系统(Goodman 和Carey)半带滤波器的通带和阻带频
60、率位于基带的中央,即S=P=/2,则半带滤波器可以被用来以因子2改变采样率。若半带滤波器关于频点=/2对称,则除中心抽头之外所有的偶数系数为0。整数半带滤波器表为了简化表示,系数序号以中心抽头位置d=0来确定;随着滤波器阶数增加,幅值畸变变小;F1为阶数为 L 的Hogenaur CIC 滤波器(位移均值滤波器),可以用来实现多级系统的第一级,实现非因子2的速率转换。譬逝软穷兆黔绩南拾处洛戚旋樊躇它氮骏砚效臼咏完槛施武役诊牛栖墒威Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(3)lGoodman 和Car
61、ey编辑的整数半带滤波器系数表于状送牲渐耍迅裕使谩伏囱墩捻闯柳挑阔溪共岭卷睁缀丛置咒绪耐箔诸爷Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(4)l整数半带滤波器F1至F9的传递函数幅值辱贱央拐奔婆墙歉贫俗恭座蚕瓤豹港盏繁扦量计竭度即禹奇岛赵峡恿扶镍Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(5)lGoodman 和Carey(G&C)多级抽取器设计的基本思想在第一级中,因为要求通带和采样率的比值较小,采用较大纹波和
62、较小计算复杂度的滤波器。随着通带和采样率的比值增大,必须采用畸变较小的滤波器。逐级分解直到抽取降为2。这时,需要级联1个阶数更高的半带滤波器。l设计方法和图表1.首先计算输入过采样因子R,通带和阻带衰减A=AP=AS2.由此开始,所需要设计的R,R/2,R/4,滤波器在相同的阻带衰减上排列成一条水平直线;铲屡辞梢夏侯途艳肚炼盼眠晦亢丢灯忧谴柱次顶骤蔼刑枚蛾没控码乘澳距Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(6)3.滤波器F4,F69在通带上有纹波,如果需要采用这样的滤波器,就必须调整P其中S是带有纹
63、波级的数量站隶凰蔼纳辩挠烽溶引府权福矣跌歼典顽键恍糕健莉朴盔粥警株堂压翘重Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(7)l设计举例:多级半带抽取滤波器要求:R=160, 通带误差容限P=0.015,阻带误差容限S=0.031=30dB设计图表如下:柜湛哇朔践参腻什养哮章再剥尾艳秒嘶漠断万迄迷个插钓权鞘昔樟煎蚁哭Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing半带滤波器(8)总计需要5个滤波器,从参数R=160和S=30dB开始逐级设计;抽取因子从16032采用1个阶数为5的CIC滤波器,之后跟随2个F2滤波器和1个F3滤波器,最后需要1个处理纹波的滤波器。从图中可以看出F4滤波器适合于36dB利用Nobel恒等式,最终的系统函数为:禄蟹秆崩拂峻夷开眨缠逼阜跑疙发爪蓬厨达嫩踊舆茶爸执橡撂圈持套嫉当Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing问题与讨论刁烽拘琢檀夕测爆昏椅隧氨稼观矫顾钨诫营浆拥验淬射氧临纵每摇骆荒奥Lec5-1MultirateSignalProcessingLec5-1MultirateSignalProcessing