I need to design a system that calculates correlation in verilog and I can only use fixed-point calculations with limited number of bits. So I need to implement a fixed-point multiplier which has less number of bits than the sum of the inputs (the inputs have the same length and number of fractional bits).
The point is that I can't just multiply them normally and then reduce the bits. So is there any particular way to do that?