New answers tagged

0

You can, if you increase phase between samples slowly enough, using unwrap(angle(signal)). "Slowly enough" means the phase doesn't jump by more than $2 \pi$; unwrap works by tracking "total phase". Python equivalent implementation here (note you can configure discont there for jumps greater than $\pi$ (or TOL) but it's pointless with ...


0

You can't. $y = e^{ix}, x \in \mathbb{R} $ is a many to one relationship , that means it's not uniquely invertible. Angles are periodic in $2\pi$ so there is no reason to. $10000$ and $10000+2*pi$ are the SAME anle.


1

Here is an example I already had in Python demonstrating the Wiener-Hopf equations detailed here Compensating Loudspeaker frequency response in an audio signal to solve for the channel equalizer. This application by the OP is ideal for this given the static channel condition as long as deep spectral nulls don't exist, over a iterative LMS or RLS equalizer ...


3

To demodulate BPSK and QPSK as described by the OP is to simply take the sign of the waveform (decision), which has trivial computational complexity. The real complexity lies in everything that occurs prior to decision in a practical receiver: There is typically an equalizer to remove multi-path distortion, a matched filter to optimize the signal to noise ...


1

The question should be what is the complexity of taking the RF signal and producing a bit estimate for BPSK and QPSK. Read Dan's answer for more information. For each received symbol, there is only one operation that you need to do and it is a comparison. You need to figure out which region the received symbol lies in, and that will give you a bit estimate. ...


Top 50 recent answers are included