I'm working on a project to stream video between 2fpgas by using QAM. While mapping symbols with different amplitude pulses(PAM) a question popped up in my mind. In real life how does communicating wireless devices know which amplitude levels to agree on for digitally modulating-demodulating bitstreams? Is there a standard for that?
n real life how does communicating wireless devices know which amplitude levels to agree on for digitally modulating-demodulating bitstreams?
You can't "agree" on levels, since the received amplitude depends on the attenuation on the channel, and that depends on distance and a lot of other factors.
So, your receiver depends on detecting something that it knows the right amplitude (or power) of – for example, a preamble, or an average squared symbol, or something like that.
How that is done depends on the system you look at – generally, this is part of the synchronization and equalization efforts every system has to make. And it really differs! For example, some continuously transmitting system will not insert any specific symbols for that, but depend on the receiver doing statistics. Others have a "silence" period followed by known symbols; other systems are packetized and depend on preambles with specific autocorrelation properties (but not necessarily 100% defined content). Other systems depend on a pilot tone, and there's many more options.
The important part is that the symbol constellation is agreed upon between transmitter and receiver. The received amplitude will most likely randomly fluctuate over time, but eventually the receiver processing gets to a point where it needs to generate symbol estimates. For example, look at the transmission of a single symbol of 16 QAM. Lets say that the red symbol is transmitted.
The transmitter puts some gain on the signal and puts it out on the channel. At the other side, the receiver will do a bunch of processing that might be system dependent (equalization and synchronization for example) before it can get to a point where a symbol estimate can be made. At this point, you might have something that looks like this:
The scale of the symbols is different now. But this is just a scaling that can be undone to match the agreed upon constellation. So before the receiver does the symbol estimates it does the scaling to match.
Digital communications are defined by standard. Here some of them:
- 3GPP for mobile phones
- ETSI with DVB for satellite broadcasting and terrestrial TV
- IEEE 802.11 for Wifi
Inside each of those standards, there is a part which describes modulation schemes and constellation diagrams.
All wireless vendors implement them as it is written so they are compatible between themselves.