No estoy seguro si encuentra problemas para entender la idea básica detrás de la demodulación o si tiene problemas para entender cómo se implementa. Seguiré adelante y explicaré la idea básica en esta respuesta con un ejemplo práctico.
El siguiente diagrama es de 16QAM
Digamos que queríamos transmitir los bits \ $ 0010 \ $, del diagrama 16QAM podemos ver que esto corresponde a \ $ I (t) = 1 \ $ y \ $ Q (t) = 3 \ $, así que lo haremos transmit \ $ s (t) \ $ que en nuestro caso será dado por
$$
s (t) = I (t) \ sin (2 \ pi ft) + Q (t) \ cos (2 \ pi ft) \\
s (t) = \ sin (2 \ pi ft) + 3 \ cos (2 \ pi ft) \\
$$
Al final del transmisor recibimos \ $ s (t) \ $ pero no sabemos qué \ $ I (t) \ $ y \ $ Q (t) \ $. Necesitamos \ $ I (t) \ $ y \ $ Q (t) \ $ para averiguar cuáles fueron los datos reales enviados.
Para obtener \ $ I (t) \ $ mulitiply \ $ s (t) \ $ by \ $ \ sin (2 \ pi ft) \ $ y luego el filtro de paso bajo, o matemáticamente hablando, calculamos
$$
s (t) \ sin (2 \ pi ft) = I (t) \ sin ^ 2 (2 \ pi ft) + Q (t) \ cos (2 \ pi ft) \ sin (2 \ pi ft) \\
= \ frac {I (t)} {2} - \ frac {I (t)} {2} \ cos (4 \ pi ft) + \ frac {Q (t)} {2} \ sin (4 \ pi pie)
$$
luego aplicamos un filtro de paso bajo y lo multiplicamos por 2 para obtener I (t), es decir,
$$
I (t) = 2 \ times \ text {LPF} (s (t) \ sin (2 \ pi ft)) \\
= 2 \ times \ text {LPF} (\ frac {I (t)} {2} - \ frac {I (t)} {2} \ cos (2x) + \ frac {Q (t)} {2} \ sin (4 \ pi ft)) \\
= 2 \ frac {I (t)} {2}
$$
También se puede mostrar que Q (t) también se puede obtener multiplicando por cos seguido de un filtro de paso bajo. Ahora tenemos los valores de I (t) y Q (t) que nos envían (asumiendo que sin ruido, sincronización perfecta, etc.) Ahora tenemos que usar los valores de I (t), Q (t) y nuestro diagrama de constelación para obtener la secuencia de bits que se envió.
Espero que esta descripción ayude