# What happens if SINR is < 1?

What happens if the SINR of a signal is less than 1 in a (wireless) network? Is that practical at all to have a SINR < 1? Using the Shannon capacity formula, it seems that we must be able to have SINR < 1, but we get a rate < 1 bits/sec/Hz.

-
Basically what you see from the Shannon formula: You can transmit information, but you need to use some redundant encoding that reduces the channel capacity (in bps) below the bandwidth (in Hz). –  The Photon Jul 29 '14 at 16:15
Right, Shannon formula gives the theoretical upper bound (i.e., capacity, not rate). But I am wondering what happens, both in theory and in practice, if SINR < 1. I heard that in some UWB systems, SINR < 1 is being used in practice. –  Helium Jul 29 '14 at 16:35
The Shannon formula always gives just an upper bound, and it's always (whether SNR < 1 or SNR > 1) up to the engineer to find an encoding that can approach the limit. My point was that for the SNR < 1 case, the encoding will have redundancy and this will make the bit rate below the bandwidth (as the Shannon formula demands). –  The Photon Jul 29 '14 at 16:47
The important question is not the ratio between the signal and "the noise" but rather the ratio between the signal and that noise which is too similar to possible behavior of the desired signal to distinguish from it. Noise within the signal bandwidth would be the first example, but then the frequency domain is not the only criteria on which you can filter. –  Chris Stratton Jul 29 '14 at 18:21
@Mohsen You are stumbling upon a huge topic of research in the EE field. There are many schemes and new ones being invented every day for trying to dig signals out of a noisy system. The applications for this are many. This topic is covered in detail in most Information Theory courses & texts. –  kjgregory Jul 29 '14 at 20:17

Yes, it is practical.

For example, if you have an ASK signal with modulation depth 60%:

>> am = [ (ones(1,100) * 0.2) (ones(1,200) * 0.8) (ones(1,200) * 0.2) (ones(1,100) * 0.8)];


Using a low-pass filter

>> d = fdesign.lowpass(0.01, 0.02, 0.01, 100);
>>  hd = design(d)

hd =

FilterStructure: 'Direct-Form FIR'
Arithmetic: 'double'
Numerator: [1x946 double]
PersistentMemory: false


you can reduce the output signal bandwidth in order to be nice to the neighbors:

>> amlp = filter2(hd.Numerator, sig);


The recipient gets a noisy signal

>> amno = amlp + 2*rand(1,600) - 0.5;


and also uses a lowpass filter to reconstruct it:

>> amre = filter2(hd.Numerator, amno) - mean(amno) + 0.5;


This signal is sufficiently similar to the original signal that you can decide between 0 and 1 bits, but you need a rather narrow filter here in order to remove the noise -- in my case, 1% of the sampling rate (that is the .01 above). Note that we're only interested in the signal at the points 50, 150, 250, ..., 550, i.e. the middle of each symbol.

In order to be able to reconstruct that signal, I had to use rather long symbols (100 samples). That is, with 100 Hz sampling rate, which would allow me to express frequencies up to 50 Hz, I can only transfer 1 bit per second.

-
Nice and instructive answer. Thank you. –  Helium Jul 29 '14 at 17:05

There are plenty of examples where SINR (or SNR) is less than 1 and still quite usable. The signal on an antenna (that you want to receive) maybe only 1 microvolt but all the other signals you don't want (from 50Hz upwards) totalize a few millivolts - radios manage to overcome this problem by filtering.

Even after filtering at a particular frequency for a wanted frequency, the result may still be SNR<1 but, if the "system" is a direct sequence spread spectrum (DSSS) transmission that doesn't matter because the sum of all the different frequencies transmitted at means that noise cancels.

-

Not only is it practical, it is commonly done. See, for instance, http://www.gpssource.com/faqs/15 which discusses the SNR of GPS signals (typically about -26 db, or ~ 1/400.

-