[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