Hi all, Currently, I am designing lowpass filter that will be implemented in mcu processor and the result filter response is like this: 6 4 2 z + 3z  3z + 1 h =  6 5 4 3 2 1 z + 6z + 17z  29z + 38z  33z + 13 Then the system inputoutput equation for implemenation will be like this: y[n] = 1/13 * (x[n] 3x[n2] + 3x[n4] ...) There is a "1/13" denominator for division operation. However, the division operation take a lot of processing time. Is there any common way to avoid this division operation. Thank you for your help. Cheers Henry 

Problem in design filter  Is it possible to avoid the division operation?
Started by ●October 9, 2002
Reply by ●October 9, 200220021009
Hi, The easiest way in a digital system is to scale your input and outputs by a factor of 2 ( which is easily achievable ). You divide the numerator and the denominator by a factor of 2 say 64 / 32 here and since it looks like u can multiply easily, a multiply by 13 should not be difficult. Thanks. Regards, Gautam Original Message From: Henry Chang [mailto:] Sent: Wednesday, October 09, 2002 5:52 PM To: Subject: [matlab] Problem in design filter  Is it possible to avoid the division operation? Hi all, Currently, I am designing lowpass filter that will be implemented in mcu processor and the result filter response is like this: 6 4 2 z + 3z  3z + 1 h =  6 5 4 3 2 1 z + 6z + 17z  29z + 38z  33z + 13 Then the system inputoutput equation for implemenation will be like this: y[n] = 1/13 * (x[n] 3x[n2] + 3x[n4] ...) There is a "1/13" denominator for division operation. However, the division operation take a lot of processing time. Is there any common way to avoid this division operation. Thank you for your help. Cheers Henry _____________________________________ Note: If you do a simple "reply" with your email client, only the author of this message will receive your answer. You need to do a "reply all" if you want your answer to be distributed to the entire group. _____________________________________ About this discussion group: To Join: To Post: To Leave: Archives: http://www.yahoogroups.com/group/matlab More DSPRelated Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/ 
Reply by ●October 10, 200220021010
hi, As 1/13 could be = 0.0769 and if multipliaction does not take much processing time that would be an option. You could think of implementing this in 2's compliment form. bye On Wed, 09 Oct 2002 12:22:09 Henry Chang wrote: >Hi all, > > Currently, I am designing lowpass filter that will be implemented >in mcu processor and the result filter response is like this: > 6 4 2 > z + 3z  3z + 1 > h =  > 6 5 4 3 2 1 > z + 6z + 17z  29z + 38z  33z + 13 > > Then the system inputoutput equation for implemenation will be >like this: > > y[n] = 1/13 * (x[n] 3x[n2] + 3x[n4] ...) > > There is a "1/13" denominator for division operation. However, the >division operation take a lot of processing time. Is there any common >way to avoid this division operation. > > Thank you for your help. > >Cheers >Henry > > >_____________________________________ >Note: If you do a simple "reply" with your email client, only the author of this message will receive your answer. You need to do a "reply all" if you want your answer to be distributed to the entire group. > >_____________________________________ >About this discussion group: > >To Join: > >To Post: > >To Leave: > >Archives: http://www.yahoogroups.com/group/matlab > >More DSPRelated Groups: http://www.dsprelated.com/groups.php3 > >">http://docs.yahoo.com/info/terms/ > ____________________________________________________________ Watch a championship game with Elway or McGwire. Enter Now at http://champions.lycos.com 