Gregory, not only are your videos awesome, I absolutely love the positive and enthusiastic energy you bring into these topics. It's obvious you enjoy what you're doing. Great job!
Wow, what a beautiful video; and what an illuminating approach! I've been trying to slog my way through DSP implementation of a bunch of digital signal demodulators. It frustrates me how infrequently these things are treated on the level of practical intuition, rather than the math. Thanks... I just joined your patreon -- yours is the single most educational UA-cam channel for me right now!
Thank you so much for your explanation of the Costas loop...it has now been Demystified by you (you are the best teacher ever). Hard to believe how QAM-1024 can even work, I now wonder how that is aligned.
Very informative video, with a lot of intuition! I think for the BPSK, a better error function would be sgn(I)*Q, instead of I*Q. This would eliminate the white zone around the Q axis (when I=0), and would give a sharper edge, like on the other diagrams. This would help the PLL to lock on faster.
You really expect the guy even understands on how to design the most important component of the whole architecture? I suggest you start looking at books (that's what I have resorted to at least)
It is always nice to have another way of looking at something. Especially since the mathematical way is often the most precise but also the least intuitive one to take. I like your way of dividing a closed loop system into subparts and look at their inputs and outputs first. I find that it often helps a lot to break the feedback and take a look at it in a linear way instead of a closed loop with feedback. Are you actually building a new receiver (maybe V2 of your BPSK receiver) or is it just a coincidence, that you cover a lot of receiver topics lately?
If the error goes to zero and the loop lands on the I=1,Q=0 point in the constellation (in the BPSK scenario for example), I can see that working. However what if it lands on the I=-1, Q=0 point in the constellation? Wont that mean your demodulated data is inverted because your loop locked on to the inverted component and not the in phase component?
The data will be inverted. This is why sync codes are needed or differential encoding. It is impossible to prevent this phase inversion ambiguity in BPSK
What is the benefit of doing the quadrature demodulator at IF instead of digital baseband? I don't think you need the low pass filter in a digital system
Thanks for another very interesting video! As I understand it your BPSK error function also goes to zero when I is 0 and Q is not zero, so you could get a lock 90 degrees out of phase, right? How would you handle that?
But if the error function is purely I * Q, to minimize it you could also have Q go to zero no? The gradient seems to reflect this, as it is also white along the Q axis. Or am I missing something. :)
It is white but it is an unstable region, any displacement/noise will generate errors that points to I. The colors (error direction) would need to be reversed to Q be stable.
The color-transition in your first constellation diagram (BPSK) ist showing a white region along the Q-axis which ist wrong. Should be showing fully saturated color.
you spent all that time jabbering about nonsense when the most important and the most significant part of the costas loop you barely touched on how to design it: the loop filter or the loop controller. Next time, spend more time on the most important aspects of a subject rather than trying to impress people
Subscribe and become a Patron! www.patreon.com/allelectronics
Gregory, not only are your videos awesome, I absolutely love the positive and enthusiastic energy you bring into these topics. It's obvious you enjoy what you're doing. Great job!
Thank you, Baltic!
yes, such a hidden gem.
Wow, what a beautiful video; and what an illuminating approach! I've been trying to slog my way through DSP implementation of a bunch of digital signal demodulators. It frustrates me how infrequently these things are treated on the level of practical intuition, rather than the math. Thanks... I just joined your patreon -- yours is the single most educational UA-cam channel for me right now!
Thank you and welcome!!
Thank you so much for your explanation of the Costas loop...it has now been Demystified by you (you are the best teacher ever). Hard to believe how QAM-1024 can even work, I now wonder how that is aligned.
Thank you! For higher constellation order, other methods are used, like Direct decision!
Very informative video, with a lot of intuition! I think for the BPSK, a better error function would be sgn(I)*Q, instead of I*Q. This would eliminate the white zone around the Q axis (when I=0), and would give a sharper edge, like on the other diagrams. This would help the PLL to lock on faster.
Yep! You are right. Sign(i) *Q is commonly used, and uses less logic on FPGA/ASICs
Thanks for this intuitive explanation, it's exactly what I needed.
Great to hear!
Wow, thanks so much for making this make sense for a complete newbie 😅 great video .
Welcome to the channel!
10:08 Awesome! Is that your invention? Or is standard method?
13:22 How many carrier cycles (bottom trace) per symbol (top trace)?
Not my invention.. Not sure about the "standard method", just something I implemented and worked! I don't remember the numbers.
How to design the filters for a) demodulating weak noisy signals and/or b) a wide frequency pull-in range ?
You really expect the guy even understands on how to design the most important component of the whole architecture? I suggest you start looking at books (that's what I have resorted to at least)
@@asinegaasinega Thank you for your suggestion which is a good one for anybody.
❤❤❤ thank you guys!
Thanks bro!
Can you elaborate on how you choose Kp, Pi?
I tuned it by hand for this demo!
It is always nice to have another way of looking at something. Especially since the mathematical way is often the most precise but also the least intuitive one to take.
I like your way of dividing a closed loop system into subparts and look at their inputs and outputs first.
I find that it often helps a lot to break the feedback and take a look at it in a linear way instead of a closed loop with feedback.
Are you actually building a new receiver (maybe V2 of your BPSK receiver) or is it just a coincidence, that you cover a lot of receiver topics lately?
Thanks man!! I'm not, I'm chilling a bit from the 10g source hahahaha
If the error goes to zero and the loop lands on the I=1,Q=0 point in the constellation (in the BPSK scenario for example), I can see that working. However what if it lands on the I=-1, Q=0 point in the constellation? Wont that mean your demodulated data is inverted because your loop locked on to the inverted component and not the in phase component?
The data will be inverted. This is why sync codes are needed or differential encoding. It is impossible to prevent this phase inversion ambiguity in BPSK
Great explanation!
Glad you think so!
What is the benefit of doing the quadrature demodulator at IF instead of digital baseband? I don't think you need the low pass filter in a digital system
There are tradeoffs.. not benefits.. zero-if dowconversion imply balanced IQ paths, AGC before ADs.. so there is no best topology
I do I get the simulation files?
please j need this matlab code
Very useful video no much content about that circuit.
How is this usually implemented in a demodulator as an analog circuit or with dsp?
Today's as DSP!
perfect video, thank you for nice explanation :)
Thank you! Welcome to the channel
Nice, is it possible to recover carrier from analog PM modulated suppressed carrier signals ?
I'm not sure! Maybe with a loop constant slower than the modulation?
Thanks for another very interesting video! As I understand it your BPSK error function also goes to zero when I is 0 and Q is not zero, so you could get a lock 90 degrees out of phase, right? How would you handle that?
No! The error gradient points to the I axis!
But if the error function is purely I * Q, to minimize it you could also have Q go to zero no? The gradient seems to reflect this, as it is also white along the Q axis. Or am I missing something. :)
It is white but it is an unstable region, any displacement/noise will generate errors that points to I.
The colors (error direction) would need to be reversed to Q be stable.
@@AllElectronicsChannel Ah I see, so the error signal has a magnitude and a direction?
Yes, the sign of the error. Negative or positive, these are the colors on the diagram!
The color-transition in your first constellation diagram (BPSK) ist showing a white region along the Q-axis which ist wrong.
Should be showing fully saturated color.
It's not wrong. it is the error function for I * Q
@@AllElectronicsChannel but in that region the error is a maximum instead of a minimum as indicated wrongly by the desaturated white coloring
@@huawatuam4965 The error is not maximum there. The color is generated by I * Q. On the Q axis the I is zero. 0 * Q = 0.
What is a NCO?
Numeric controlled oscillator
Ah, of course. Thanks. Great videos btw
you spent all that time jabbering about nonsense when the most important and the most significant part of the costas loop you barely touched on how to design it: the loop filter or the loop controller. Next time, spend more time on the most important aspects of a subject rather than trying to impress people
Thank you for loving the content and loving the channel! ❤❤❤