FW: Re: [Speex-dev] Problem with Blackfin assembly optimizations -- bug in fixed_bfin.h?

Frank Lorenz Frank_wtal at web.de
Thu Jan 24 05:53:28 PST 2008


Hi Jean-Marc,

I did some further checks with 1.2 beta 3:
The problematic function is DIV32_16 inside fixed_bfin.h. When I comment it out (i.e. replace it by the generic version of the routine), the quality improves significantly. Nevertheless, there is still a horrible distortion when there is some overdrive/saturation in the input signal. For me, it looks like there's an instable filter which oscillates when it is driven by a specific input frequency.
With the blackfin version of DIV32_16 activated, a similar distortion appears even without overdrive, sometimes this distortion lasts forever. Addittionally, I always hear some kind of "fast ticking" noise in the background (sounds like non-smooth frame-fades).

Does this help you to get some idea about the cause of the problem?

best regards,
Frank

-----Ursprüngliche Nachricht-----
Von: Frank Lorenz <Frank_wtal at web.de>
Gesendet: 22.01.08 23:16:05
An: speex-dev at xiph.org
Betreff: Re: [Speex-dev] Problem with Blackfin assembly optimizations -- bug in fixed_bfin.h?

Hi Marc,

I encountered the problems even with older versions of speex, including 1.2beta2 and 1.1.12, too.
I had no time in the last weeks to investigate this issue further, sorry. Hopefully, I'm able to do some more test the next days, but I have no real idea how to proceed  
Performance and quality seem to be o.k. for me if I deactivate the Blackfin optimizations inside the file "fixed_bfin.h".
Because I am not an expert on Blackfin architecture and assembler up to now, I think it would be helpful to start some discussion with David Rowe (his blog points me to the fact he has done a lot of optimizations for Blackfin?)? If I read old posts from this mailing list and David's Blog, it seems like there were people who were able to run speex on Blackfin without these problems?

cheers,
Frank


-----Ursprüngliche Nachricht-----
Von: "Jean-Marc Valin" <jean-marc.valin at usherbrooke.ca>
Gesendet: 20.01.08 12:30:06
An: Frank Lorenz <Frank_wtal at web.de>
CC: speex-dev at xiph.org
Betreff: Re: [Speex-dev] Problem with Blackfin assembly optimizations -- bug in fixed_bfin.h?


Hi,

Just following up on this. Did were you able to figure out what causes
the problem? Also, does it happen with 1.2beta2?

	Jean-Marc

Frank Lorenz a écrit :
> Hello everybody,
> 
> I'm currently trying to run speex on the Blackfin (BF-537) STAMP
> evaluation board unter uCLinux. Using 1.2 beta 3, I encountered
> problems when activating the Blackfin assembler optimizations.
> Without optimizations for blackfin, i.e. calling ./configure
> --enable-fixed-point --host=bfin-uclinux everything seems to work
> fine. But when I add  the --enable-blackfin-asm flag to the above
> call, a speech signal which has been passed through the codec is
> cleary disturbed (for me, it sounds like the long term prediction
> (voice pitch detection) fails -- the signal sounds like the speaker
> has a very ugly sore throat). I tried to deactivate each part of the
> optimizaitions inside the libspeex directory, one after another. Most
> of the "turn-offs" doesn't have any effect. When turning off the
> optimizations inside "fixed_bfin.h", there is a big improvement --
> the decoded speech sounds good again, only on some positions in my
> speech signal is a huge "click" which sounds like an overdrive caused
> by an  instable filter. When trying to switch off the optimizations
> from "filters_bfin.h", my little program compiles but crashes on
> runtime, sometimes (not always reproducable) causing a kernel panic
> of uclinux. Error info is "Attempted misaligned instruction cache
> fetch".
> 
> Does anybody know what happens here?
> 
> best regards, Frank 
> _________________________________________________________________________
>  In 5 Schritten zur eigenen Homepage. Jetzt Domain sichern und
> gestalten! Nur 3,99 EUR/Monat!
> http://www.maildomain.web.de/?mc=021114
> 
> _______________________________________________ Speex-dev mailing
> list Speex-dev at xiph.org 
> http://lists.xiph.org/mailman/listinfo/speex-dev
> 
> 



_________________________________________________________________________
In 5 Schritten zur eigenen Homepage. Jetzt Domain sichern und gestalten! 
Nur 3,99 EUR/Monat! http://www.maildomain.web.de/?mc=021114

_______________________________________________
Speex-dev mailing list
Speex-dev at xiph.org
http://lists.xiph.org/mailman/listinfo/speex-dev



_______________________________________
GRATIS: Movie-FLAT. Jetzt freischalten!
http://freemail.web.de/club/maxdome.htm



More information about the Speex-dev mailing list