Hi Martin,
Thank you for response. I don't want Eb/N0, because there is not bit stream but complex symbols.
As you said, there are two possible solutions:
1- If one uses a specific modulation, so by sending a long known bit sequence, the BER (bit error rate) can be found accordingly then the SNR can be obtained from the theoretical relationship between BER and SNR (here SNR is Eb/N0). I think this is not practical due to the fact that we use the analytic relationship while in practice we want to, for instance, prove that relationship is true.
2- Measuring SNR in analog is, in fact, a hard task. Because as you said it depends on both receiver hardware parameters (such as phase noise, frequency offset, timing offset, quantization, ... ) and channel characteristics (such as small and large scale fadings). This method also may need a sort of channel sounding to extract the channel response corresponding to the measurement environment.
The third way I could add here is: using a kind a calibration between Tx/Rx with sending a sine wave pilot. Suppose a sine wave (in base band) with frequency 'fm' is sent via a Tx with the power of 'A' dB. At Rx we take FFT of the signal which has a shape like this:
I assumed that the power level out of sine wave is about -10dBm, call it 'noise_floor', and the received power level of the sine is 0dBm, call it 'peak'. By using the following formula the SNR can be calculated:
SNR = peak - noise_floor - 10 log (N_fft/2).
N_fft is the number of fft points. Once the SNR value is calculated for 'A' dB Tx power, it seems reasonable to have different SNRs with changing just the Tx power.
I'm not sure whether this approach is accurate as we need or not! Is it true? I want to know your recommendations.
Thanks in advance,
Mostafa