Hi, Thank you both for such a thorough approach to my question. I'm glad I can say you helped a lot. I removed delay and MPYCTL0 mode set, register save and restore, and also reading low result byte (not needed for my application) and now the function takes a little over 0.5us! I do have one more question: I need to divide two 16-bit signed integers, none of them being a constant value (both values taken from ADC and some more math done - that's why they are signed). And a result needs to be a 16-bit signed integer too. I use this statement: result = ((int32_t)numer << 16) / denom; It takes 15.6us. Is it possible to achieve faster division some other way? Thanks again for your support! Dragana
↧