[tremor] Some questions regarding the low-accuracy setting for tremor

Erik Montnemery d99em at efd.lth.se
Wed Sep 3 07:00:49 PDT 2003



We are working on porting Tremor to a system using both an Arm and a
16-bit DSP. Or idea is to do most of the calculations on the DSP and do
mostly bitstream parsing on the CPU. Unfortunately the DSP does not
support 32*32->32 multiplications, but does support 17*17 multiplications
to a
40-bit accumulator.
When looking at the low-accuracy setting we saw that many multiplications
are using a curious 23*9->32 bit wide mode, where 23 bits are used for
the actual data and only 9 bits are used for constants, with some notes
about this giving  the best result when listening to the output. We tried
to change this to 16*16->32 bit multiplications which severely crippled
performance, most problems seem to appear in the inverse MDCT calculation.
Severely crippled means PCM output with peak errors of up to 20% compared
to 1.5% or so with the low_accuracy setting unmodified.
Is there a good explanation for this, or have we overlooked something?
We have changed the MULT3*  macros, the X() function for constants as well
as the PI constants.

Regards,
Erik Montnémery and Johannes Sandvall

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'tremor-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Tremor mailing list