From bfournier@unam.mx Sat Jul 13 20:50:12 1996 Path: ashpoly!cascade!transat!eunet-fi!relcom!kiae!unam!bfournier From: bfournier@unam.mx (Bruno Fournier) Newsgroups: comp.dsp Subject: WTB/WTT: Fixed-point Q15 arithmetic on Motorola DSP56001 vs IEEE floating point Message-ID: <1996Jul13.205012.3621@unam.mx> Date: Sat, 13 Jul 1996 20:50:12 GMT Organization: Universidad Nacional Autónoma de México (DGSCA) NNTP-Posting-Host: unam.mx X-Newsreader: Netscape 1.1N Lines: 11 Porting stardust.c to the NeXTcube and Atari Falcon DSP subsystems. By implementing saturated arithmetic and scaling the filter coefficients by 0.5, the loop runs in 18 instruction cycles per sample. However, when downsampling from 44.1 kHz to 64 Hz, accumulator overflow in the biquad IIR filter can destabilize the loop. Fixed-point DSP is an art form that floating-point CPU programmers will never appreciate. -- Bruno Fournier Zyxel U-1496E @ 9600 Telebit bps "A soul is not exclusive to biology." From mstewart@kth.se Sun Jul 14 16:34:12 1996 Path: ashpoly!cascade!transat!eunet-de!hansebox!kth!mstewart From: mstewart@kth.se (Mateo Stewart) Newsgroups: comp.dsp Subject: Re: WTB/WTT: Fixed-point Q15 arithmetic on Motorola DSP56001 vs IEEE floating point Message-ID: <1996Jul14.163412.6891@kth.se> Date: Sun, 14 Jul 1996 16:34:12 GMT References: <1996Jul13.205012.3621@unam.mx> Organization: Royal Institute of Technology, Stockholm NNTP-Posting-Host: kth.se X-Newsreader: NewsWatcher 2.0b24 Lines: 11 In article <1996Jul13.205012.3621@unam.mx>, bfournier@unam.mx (Bruno Fournier) writes: > Porting stardust.c to the NeXTcube and Atari Falcon DSP subsystems. > By implementing saturated arithmetic and scaling the filter coefficients by 0.5, the loop runs in 18 instruction cycles per sample. Beautiful assembly code! The 24-bit word size of the 56001 is tailor-made for high-precision audio filtering. Top-posters will be placed in my ~/.killfile without notice. -- Mateo Stewart -- Royal Institute of Technology, Stockholm "Marcus is not one man."