I generate some random data (bits, actually, using MATLAB's
randi) and then I convert such bits to BPSK (1 and -1). After that, I use a RRC pulse (roll-off factor of 0.35, 8 symbols and 4 samples per symbol) to create the waveform.
The bandwidth of the pulse-shaped BPSK then would be ($\beta$ is the roll-off factor):
$$ BW = R_S(1+\beta) $$
My problem here is how to determine $R_s$ (data rate). I mean, I'm using
randi, not an actual data source so initially I tried to make that value up. I suppose $R_s=1MHz$, after pulse shape the sampling frequency is $f_s = sps*R_S = 4MHz$ ($sps=4$ because of the 4 samples per symbol stated above), then the bandwidth should be something like $BW=(1+0.35)1MHz=1.35MHz$ and tried to plot the DFT of the pulse-shaped sequence for a final sampling rate of $4 MHz$:
As you can see, the bandwidth is nowhere near $1.35 MHz$.
So these are my questions:
- How can I manipulate/control $R_S$
- What's wrong with my calculations?