Facilitates 'XOR in the air' through ML detection of x = x1 + x2, where x1, x2 are data streams identically modulated with M-PSK.
The constructor accepts a 'modem.pskmod' object (of Communications System Toolbox), and creates a matching 'pskdemodXOR' object. Member function 'demodulate' handles the demodulation.
M = 8; K = 100;
hMod = modem.pskmod(M);
hDemod = pskdemodXOR(hMod);
D1 = randi(M,1,K)-1; x1 = modulate(hMod,D1);
D2 = randi(M,1,K)-1; x2 = modulate(hMod,D2);
D = hDemod.demodulate(x1+x2);
all(bitxor(D1,D2)==D) % ans = 1
1. demodulate (symbol-by-symbol ML detection),
2. show (displays XORed constellation),
3. mindist (computes min. distance between 2 points in the constellation)
Changed phrase: 'XOR over the air' to in the description to 'XOR in the air', which is more proper.