I am implementing a fixed point model of Windowed OFDM and to quantize the input data, I used 16 bits(complex) to encode it. But I am not sure how do we specify the minimum number of bits that should be used to encode the input ensuring the output wont be "off" from the expected results.

I saw a similar question in Bit width for FFT but the person has said assuming "M" input bits. Is it an empirical data that you set by trial and error or is there some maths behind it.

Thank you


Depends on which processor platform you want to implement it. If it is an ASIC (Application Specific Integrated Circuit) chip, they come with ARM processor cores in most cases and real time computation require fixed-point implementation. There is also memory limitation in such processors due to smaller footprint of device. If you implementation is on processor which is 32 or 64-bit wide and has large amount of memory at its disposal (such as on Laptop, Desktop), you can use 32-bit fixed point notation (even though floating point would just work fine like IPP DSP Library from Intel). In your case, if your I and Q data each are 16-bit fixed point numbers, I don't think you have to worry too much. I am not sure if there is a specific advantage but almost all fixed point convention I have come across use 1 sign bit and rest fractional bit. In this case Q1.15 format. In that case you need to normalize all your symbols, channel co-efficients etc so that they are within +/-1.

  • $\begingroup$ Thank you for your answer. I am using Q15 format on a ARC processor(vector DSP) and the input is scaled in +/-1 range and I did do a verification against EVM to check if 16 bits was enough (It was) but I was wondering if there is a more generic answer like a formula or rule of thumb which says, yes these many bits are required. $\endgroup$ – samz12 Mar 30 '20 at 9:25
  • 1
    $\begingroup$ Example - If the EVM spec says minimum 1% , your fractional resolution should which can be achieved with at least 7 fractional bits ($\frac{1}{2^7}$). You cannot use 6 bits because resolution is 1/64=0.015625. So check if there are some restrictions like these in your case. $\endgroup$ – jithin Mar 30 '20 at 9:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.