DSPRelated.com
Forums

AM SSB demodulation

Started by Vikram Chandrasekhar April 14, 2004
Hello,

I am trying to demodulate an AM SSB (single side band) baseband
signal. Are there any standard techniques/papers for AM SSB baseband
demodulation in the presence of arbitrary phase/frequency offsets?

To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where
H[ ] denotes the Hilbert transform, fc denotes the carrier frequency
and s(t) is the complex analytic signal be the transmit complex
analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the
receiver oscillator frequency, phi is any arbitrary phase reference
denote the recovered signal at the receiver side. In this case,
r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). 

How does one recover m(t) in such a case?

Thank you
Vikram
Vikram Chandrasekhar wrote:

> Hello, > > I am trying to demodulate an AM SSB (single side band) baseband > signal. Are there any standard techniques/papers for AM SSB baseband > demodulation in the presence of arbitrary phase/frequency offsets? > > To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where > H[ ] denotes the Hilbert transform, fc denotes the carrier frequency > and s(t) is the complex analytic signal be the transmit complex > analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the > receiver oscillator frequency, phi is any arbitrary phase reference > denote the recovered signal at the receiver side. In this case, > r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). > > How does one recover m(t) in such a case? > > Thank you > Vikram
Even though I haven't figured out what your variables stand for -- I can guess some, but I'm not a long-distance mind reader -- I have a question raised by your first sentence. Is your signal SSB or baseband? I suppose that one can consider SSSC on a DC carrier as crypto-baseband, but one of my guesses is that you don't mean that. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Hi Vikram,

> I am trying to demodulate an AM SSB (single side band) baseband > signal. Are there any standard techniques/papers for AM SSB baseband > demodulation in the presence of arbitrary phase/frequency offsets?
Since that sort of offset can be simulated by the signal, you'll need to correct the offset before the signal can be recovered. The easiest way to do that is with accurate oscillators. If you really can't do that, then you'll need to add some information to the transmission that will let the receiver sync to the correct carrier frequency.
Hello Jerry,
I am trying to demodulate a SSB-baseband signal i.e a signal which is
complex analytic with spectrum centered around DC. So, if m(t) is the
message signal,
then m(t)+j*Hilbert[m(t)]is the SSB-baseband signal.


Naturally, taking the real part of m(t)+j*Hilbert[m(t)] gives back the
message signal. When there is an arbitrary phase/frequency offset on
the signal i.e you receive {m(t)+j*Hilbert[m(t)]}*e^(j*phi), I am
having trouble demodulating the signal.

Any thoughts,
Vikram



Jerry Avins <jya@ieee.org> wrote in message news:<407d072a$0$2776$61fed72c@news.rcn.com>...
> Vikram Chandrasekhar wrote: > > > Hello, > > > > I am trying to demodulate an AM SSB (single side band) baseband > > signal. Are there any standard techniques/papers for AM SSB baseband > > demodulation in the presence of arbitrary phase/frequency offsets? > > > > To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where > > H[ ] denotes the Hilbert transform, fc denotes the carrier frequency > > and s(t) is the complex analytic signal be the transmit complex > > analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the > > receiver oscillator frequency, phi is any arbitrary phase reference > > denote the recovered signal at the receiver side. In this case, > > r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). > > > > How does one recover m(t) in such a case? > > > > Thank you > > Vikram > > Even though I haven't figured out what your variables stand for -- I can > guess some, but I'm not a long-distance mind reader -- I have a question > raised by your first sentence. Is your signal SSB or baseband? I suppose > that one can consider SSSC on a DC carrier as crypto-baseband, but one > of my guesses is that you don't mean that. > > Jerry
Vikram,

I still don't get it. That's probably my shortcoming, a matter (in part)
of my not using the lingo right. As far as I know, an analytic signal --
like a single sideband, is one sided. You say that your signal is
"centered around DC". How can that be?

I am also confused by the phase shift that you show affecting both the
real and imaginary parts equally. The sideband is a band, not a single
frequency. Changing the phase of all the components is a sophisticated
operation (90 deg. is what a Hilbert transformer does) and unlikely to
happen accidentally. On the other hand, if you meant a constant delay
but expressed it as phi(w) proportional to w, then that won't affect
demodulation at all.

Jerry
-- 
Engineering is the art of making what you want from things you can get.
&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Vikram Chandrasekhar wrote:

> Hello Jerry, > I am trying to demodulate a SSB-baseband signal i.e a signal which is > complex analytic with spectrum centered around DC. So, if m(t) is the > message signal, > then m(t)+j*Hilbert[m(t)]is the SSB-baseband signal. > > > Naturally, taking the real part of m(t)+j*Hilbert[m(t)] gives back the > message signal. When there is an arbitrary phase/frequency offset on > the signal i.e you receive {m(t)+j*Hilbert[m(t)]}*e^(j*phi), I am > having trouble demodulating the signal. > > Any thoughts, > Vikram > > > > Jerry Avins <jya@ieee.org> wrote in message news:<407d072a$0$2776$61fed72c@news.rcn.com>... > >>Vikram Chandrasekhar wrote: >> >> >>>Hello, >>> >>>I am trying to demodulate an AM SSB (single side band) baseband >>>signal. Are there any standard techniques/papers for AM SSB baseband >>>demodulation in the presence of arbitrary phase/frequency offsets? >>> >>>To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where >>>H[ ] denotes the Hilbert transform, fc denotes the carrier frequency >>>and s(t) is the complex analytic signal be the transmit complex >>>analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the >>>receiver oscillator frequency, phi is any arbitrary phase reference >>>denote the recovered signal at the receiver side. In this case, >>>r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). >>> >>>How does one recover m(t) in such a case? >>> >>>Thank you >>>Vikram >> >>Even though I haven't figured out what your variables stand for -- I can >>guess some, but I'm not a long-distance mind reader -- I have a question >>raised by your first sentence. Is your signal SSB or baseband? I suppose >>that one can consider SSSC on a DC carrier as crypto-baseband, but one >>of my guesses is that you don't mean that. >> >>Jerry
Vikram Chandrasekhar wrote:
> Hello Jerry, > I am trying to demodulate a SSB-baseband signal i.e a signal which is > complex analytic with spectrum centered around DC. So, if m(t) is the > message signal, > then m(t)+j*Hilbert[m(t)]is the SSB-baseband signal. > > > Naturally, taking the real part of m(t)+j*Hilbert[m(t)] gives back the > message signal. When there is an arbitrary phase/frequency offset on > the signal i.e you receive {m(t)+j*Hilbert[m(t)]}*e^(j*phi), I am > having trouble demodulating the signal. > > Any thoughts, > Vikram > > > > Jerry Avins <jya@ieee.org> wrote in message news:<407d072a$0$2776$61fed72c@news.rcn.com>... > >>Vikram Chandrasekhar wrote: >> >> >>>Hello, >>> >>>I am trying to demodulate an AM SSB (single side band) baseband >>>signal. Are there any standard techniques/papers for AM SSB baseband >>>demodulation in the presence of arbitrary phase/frequency offsets? >>> >>>To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where >>>H[ ] denotes the Hilbert transform, fc denotes the carrier frequency >>>and s(t) is the complex analytic signal be the transmit complex >>>analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the >>>receiver oscillator frequency, phi is any arbitrary phase reference >>>denote the recovered signal at the receiver side. In this case, >>>r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). >>> >>>How does one recover m(t) in such a case? >>> >>>Thank you >>>Vikram >> >>Even though I haven't figured out what your variables stand for -- I can >>guess some, but I'm not a long-distance mind reader -- I have a question >>raised by your first sentence. Is your signal SSB or baseband? I suppose >>that one can consider SSSC on a DC carrier as crypto-baseband, but one >>of my guesses is that you don't mean that. >> >>Jerry
This is where the OP's comment about needing a phase/frequency reference in the signal (or in addition to it) to properly decode the signal. This means that you need some a-priori knowledge about the signal, and you need a signal that is suitable for synchronization. If you want to synchronize to a completely arbitrary m(t) you're up a creek without a paddle. I have seen auto-tuners for SSB voice transmission that leverage the fact that human speech contains voiced tones tend to come in harmonics, because the vocal cords make a "buzz" that is filtered by the throat and mouth. This means that you can FFT the SSB signal and line up all the peaks in the FFT. The other method I know adds a small amount of carrier energy to the signal. Assuming that m(t) has no DC content you would transmit m'(t) = m(t) + c. At the receive end you would phase-lock your carrier frequency and phase to this DC value, servoing it until the low-frequency component of r(t) has no imaginary component. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
Hello Jerry, Tim and Matt

Thank you all for your responses. I really appreciate it.

Jerry: I am sorry, my wording was technically incorrect. What I meant
to say was that the SSB baseband signal is one-sided around the
origin. Depending on whether we choose m(t)+j*Hilbert[m(t)], or
m(t)-j*Hilbert[m(t)], one obtains the upper (positive side of origin)
or lower (negative side of origin)
spectrum of the message m(t).

Jerry/Matt/Tim: From your emails as well as subsequent reading of
literature, I learnt that coherent demodulation of an AM-SSB signal
requires the apriori knowledge of information at both transmitter and
receiver. One immediate scheme which occured to me is to send a tone
whose baseband spectrum does not overlap with the single-side message
spectrum. This tone can be used to generate a coherent phase
demodulation at the reciever, thereby removing any residual
phase/frequency offset. Thus, one can recover the message m(t) at the
receiver. However,  I did not fully understand the implications of the
statement

> Assuming that m(t) has no DC content you would transmit m'(t) = > m(t) + c. At the receive end you would phase-lock your carrier > frequency and phase to this DC value, servoing it until the > low-frequency component of r(t) has no imaginary component.
How does adding a dc value (or transmitting a tone at the carrier frequency help to perform coherent demodulation). Don't we need to ensure that the tone and the message spectra do not overlap. Thank you Vikram Tim Wescott <tim@wescottnospamdesign.com> wrote in message news:<107r1t1mc4fc46b@corp.supernews.com>...
> Vikram Chandrasekhar wrote: > > Hello Jerry, > > I am trying to demodulate a SSB-baseband signal i.e a signal which is > > complex analytic with spectrum centered around DC. So, if m(t) is the > > message signal, > > then m(t)+j*Hilbert[m(t)]is the SSB-baseband signal. > > > > > > Naturally, taking the real part of m(t)+j*Hilbert[m(t)] gives back the > > message signal. When there is an arbitrary phase/frequency offset on > > the signal i.e you receive {m(t)+j*Hilbert[m(t)]}*e^(j*phi), I am > > having trouble demodulating the signal. > > > > Any thoughts, > > Vikram > > > > > > > > Jerry Avins <jya@ieee.org> wrote in message news:<407d072a$0$2776$61fed72c@news.rcn.com>... > > > >>Vikram Chandrasekhar wrote: > >> > >> > >>>Hello, > >>> > >>>I am trying to demodulate an AM SSB (single side band) baseband > >>>signal. Are there any standard techniques/papers for AM SSB baseband > >>>demodulation in the presence of arbitrary phase/frequency offsets? > >>> > >>>To elaborate my query, let s(t)={m(t)+j*H[m(t)]}*e^(j*2*pi*fc*t) where > >>>H[ ] denotes the Hilbert transform, fc denotes the carrier frequency > >>>and s(t) is the complex analytic signal be the transmit complex > >>>analytic signal. Let r(t)=s(t)*e^(-j*2*pi*fc1*t-phi) where fc1 is the > >>>receiver oscillator frequency, phi is any arbitrary phase reference > >>>denote the recovered signal at the receiver side. In this case, > >>>r(t)=s(t)*e^(j*2*pi*(fc-fc1)*t-phi). > >>> > >>>How does one recover m(t) in such a case? > >>> > >>>Thank you > >>>Vikram > >> > >>Even though I haven't figured out what your variables stand for -- I can > >>guess some, but I'm not a long-distance mind reader -- I have a question > >>raised by your first sentence. Is your signal SSB or baseband? I suppose > >>that one can consider SSSC on a DC carrier as crypto-baseband, but one > >>of my guesses is that you don't mean that. > >> > >>Jerry > > This is where the OP's comment about needing a phase/frequency reference > in the signal (or in addition to it) to properly decode the signal. > This means that you need some a-priori knowledge about the signal, and > you need a signal that is suitable for synchronization. If you want to > synchronize to a completely arbitrary m(t) you're up a creek without a > paddle. > > I have seen auto-tuners for SSB voice transmission that leverage the > fact that human speech contains voiced tones tend to come in harmonics, > because the vocal cords make a "buzz" that is filtered by the throat and > mouth. This means that you can FFT the SSB signal and line up all the > peaks in the FFT. > > The other method I know adds a small amount of carrier energy to the > signal. Assuming that m(t) has no DC content you would transmit m'(t) = > m(t) + c. At the receive end you would phase-lock your carrier > frequency and phase to this DC value, servoing it until the > low-frequency component of r(t) has no imaginary component.
Vikram Chandrasekhar wrote:

> Hello Jerry, Tim and Matt > > Thank you all for your responses. I really appreciate it. > > Jerry: I am sorry, my wording was technically incorrect. What I meant > to say was that the SSB baseband signal is one-sided around the > origin. Depending on whether we choose m(t)+j*Hilbert[m(t)], or > m(t)-j*Hilbert[m(t)], one obtains the upper (positive side of origin) > or lower (negative side of origin) > spectrum of the message m(t). > > Jerry/Matt/Tim: From your emails as well as subsequent reading of > literature, I learnt that coherent demodulation of an AM-SSB signal > requires the apriori knowledge of information at both transmitter and > receiver. One immediate scheme which occured to me is to send a tone > whose baseband spectrum does not overlap with the single-side message > spectrum. This tone can be used to generate a coherent phase > demodulation at the reciever, thereby removing any residual > phase/frequency offset. Thus, one can recover the message m(t) at the > receiver. However, I did not fully understand the implications of the > statement
The nature of your signal still isn't clear to me. If it really is at baseband, then it's already, in effect, demodulated. If it is displaced in frequency and you want to bring it to baseband, then you need to know the displacement frequency. You can either find it experimentally (as when tuning an SSB receiver by ear), rely on a-priori knowledge of it, or transmit a reference tone along with the signal. The most used transmitted reference is the carrier frequency at low amplitude. <sidebar> SSB stands for single sideband; the strength of the carrier is unspecified. Removing one sideband saves bandwidth. Removing the carrier saves transmitter power, but -- for speech -- has marginal effect on bandwidth. The most efficient form of SSB is SSSC; single sideband, suppressed carrier. The easiest form of SSB to detect is exalted carrier SSB, for which an ordinary AM detector serves. </sidebar> When a SSB signal includes the carrier at low amplitude, it is called vestigial carrier SSB. (Not to be confused with vestigial sideband.) The vestigial carrier can be used several ways. Most simply, it can be isolated by a very selective filter, amplified greatly, and added to the original signal which is then fed to an ordinary peak detector. The advantage of this scheme is that the phase is unimportant. The isolation can also be accomplished with a PLL. (Phase doesn't matter; an FLL is enough. This is what one does when turning on a receiver's BFO and setting it to zero beat.) In any event, since a pilot tone takes little power and can be amplified, it's a workable approach. It has drawbacks, though: another time. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Jerry Avins wrote:

> Vikram Chandrasekhar wrote: > >> Hello Jerry, Tim and Matt >> >> Thank you all for your responses. I really appreciate it. >> >> Jerry: I am sorry, my wording was technically incorrect. What I meant >> to say was that the SSB baseband signal is one-sided around the >> origin. Depending on whether we choose m(t)+j*Hilbert[m(t)], or >> m(t)-j*Hilbert[m(t)], one obtains the upper (positive side of origin) >> or lower (negative side of origin) >> spectrum of the message m(t). >> >> Jerry/Matt/Tim: From your emails as well as subsequent reading of >> literature, I learnt that coherent demodulation of an AM-SSB signal >> requires the apriori knowledge of information at both transmitter and >> receiver. One immediate scheme which occured to me is to send a tone >> whose baseband spectrum does not overlap with the single-side message >> spectrum. This tone can be used to generate a coherent phase >> demodulation at the reciever, thereby removing any residual >> phase/frequency offset. Thus, one can recover the message m(t) at the >> receiver. However, I did not fully understand the implications of the >> statement > > > The nature of your signal still isn't clear to me. If it really is at > baseband, then it's already, in effect, demodulated. If it is displaced > in frequency and you want to bring it to baseband, then you need to know > the displacement frequency. You can either find it experimentally (as > when tuning an SSB receiver by ear), rely on a-priori knowledge of it, > or transmit a reference tone along with the signal. The most used > transmitted reference is the carrier frequency at low amplitude. >
- snip -
> > Jerry
He's got two baseband signals: inphase and quadrature. It's the mathematicians way of expressing a phasing-method SSB demodulator. In the real world you don't have r(t) = m(t) + j m(t) * h(t), you have the inphase and quadrature channels from a dual-mixer system that were separately demodulated. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
Vikram Chandrasekhar wrote:

> Hello Jerry, Tim and Matt > > Thank you all for your responses. I really appreciate it. > > Jerry: I am sorry, my wording was technically incorrect. What I meant > to say was that the SSB baseband signal is one-sided around the > origin. Depending on whether we choose m(t)+j*Hilbert[m(t)], or > m(t)-j*Hilbert[m(t)], one obtains the upper (positive side of origin) > or lower (negative side of origin) > spectrum of the message m(t). > > Jerry/Matt/Tim: From your emails as well as subsequent reading of > literature, I learnt that coherent demodulation of an AM-SSB signal > requires the apriori knowledge of information at both transmitter and > receiver. One immediate scheme which occured to me is to send a tone > whose baseband spectrum does not overlap with the single-side message > spectrum. This tone can be used to generate a coherent phase > demodulation at the reciever, thereby removing any residual > phase/frequency offset. Thus, one can recover the message m(t) at the > receiver. However, I did not fully understand the implications of the > statement > > >>Assuming that m(t) has no DC content you would transmit m'(t) = >>m(t) + c. At the receive end you would phase-lock your carrier >>frequency and phase to this DC value, servoing it until the >>low-frequency component of r(t) has no imaginary component. > > > How does adding a dc value (or transmitting a tone at the carrier > frequency help to perform coherent demodulation). Don't we need to > ensure that the tone and the message spectra do not overlap. > > Thank you > Vikram > >
-- snip -- Yes, you need to insure that the tone and message spectra do not overlap -- that's why I said "assuming no DC content". The reason that it helps is it gives you some very solid, easy to deal with a-priori knowledge of the signal. You know that there's a TONE there, at a specific frequency, and all you have to do is lock onto it (just assume that DC is a tone equal to cos(0*t), for the sake of generality). Since you know that you can get darn _close_ to your signal frequency this is all you need, and unless your signal has big tones in _it_, close to DC, then you're home free. Incidentally my suggestion of adding DC to m(t) is just Jerry's vestigial-carrier SSB -- how you describe it depends on how deeply your head is buried in your math books. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com