--- Quote Start ---
You need one filter per branch to remove the f1+f2 (sum term) leaving signal at dc (f1-f2). Any LPF will do (including rrc if you wish).
The loop itself needs error detector and filter to smooth out the error. This loop filter can be an IIR with variable gain.
The IIR filter represents the integral part of your loop control system.
You may need further control terms such as proportional term.
The filter error is then used to shift phase(or frequency) of NCO in the opposite sense.
--- Quote End ---
The error detector you referred to is the mixer at the end of the loop, right?
Regarding loop filter, I saw some structures that combine both integral and proportional terms,
is it the same as you are suggesting?
http://www.alteraforum.com/forum/attachment.php?attachmentid=10367&stc=1 --- Quote Start ---
I notice your bb_signal_I has plenty of zeros in it but not Q
--- Quote End ---
You mean zero crossings? is this bad?
--- Quote Start ---
I wouldn't advice you to do any decimation inside loop as it could get complicated on you.
--- Quote End ---
I thought decimating is beneficial before doing any further signal processing as this relaxes the requirements.
I'll use regular LPFs then. How to choose the cutoff frequency of these LPFs?