I'm looking for examples of how to do fractional (q-number) multiplies and multiply accumulates in C using the hardware multiplier on the MSP430F5xx_6xx. My typical use case would be a sequence of MACs of Q15 numbers, feeding a Q31 accumulator and truncating to Q15 at the very end of the sequence, to minimize problems like limit cycles.
I've seen the mpy32_ex15_fractionMode example in CCS Resource Explorer, but I'm unclear on how to use this for MACs. And I'm wondering if there's a macro library or some simpler way to do this; for example, some way to just tell the compiler to do a fractional MAC when I say "a += b*c".
Any suggestions?