I try to implement a qpsk modulator in Octave. The chain is the state of the art I guess:
$$\text{Symbol mapper} \rightarrow \text{Upsample 4} \rightarrow \text{Root raised cosine filter} $$
My main question is about the upsampling. I try to do it two ways:
- zero hold (I think it is called like that - adding factor-1 last values)
- zero padding (adding factor-1 zeros, here the spectrum is duplicated and alias filtered by RRC)
I have not tried yet to do a BER measure with AWGN, but eye-diagram and spectrum looks different depending how I upsample. I have the feeling that the spectrum and eye diagram is more correct with zero hold but get a residual bias at the sampling point.
Am I wrong?