We want to discuss about elements of digital communication
<https://en.wikipedia.org/wiki/Data_transmission> that it can be useful for
that work bettwer with SDR
<https://en.wikipedia.org/wiki/Software-defined_radio> framework like
GnuRadio <https://www.gnuradio.org/> or Matlab Simulink
<https://www.mathworks.com/>. So we know them are for basic for study more
we should refer to references.

*Sampling:*

For Converting analog data to digital data we use sampling process.We are
limit in sampling with shannon sampling
<https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem>
theorem. we can do sampling with different sampling rate, for example for
audio sampling rate we can use 8000,16000,32000,44100 hz sample rate.

*Complex Sampling:*

For real data sampling  we in spectrum in a center frequency we have data
in spectrum in [fcenter,fcenter+sps/2],that sps is sample persecond that
when we has sps 10 MHZ and  center frequency 100 MHZ, in spectrum we see
data on 100Mhz to 105Mhz, but for complex sampling we has data spectrum on
[fcenter-sps/2,fcenter+sps/2], for sps 10 Mhz and  center frequency 100 Mhz
we have data spectrum on 95 Mhz to 105 Mhz. If you work with gnuradio can
see this subject in osmocom
<https://osmocom.org/projects/sdr/wiki/GrOsmoSDR> source and sink.

In that case, the Nyquist rate <https://en.wikipedia.org/wiki/Nyquist_rate>
for a waveform with no frequencies *≥ B* can be reduced to just *B*
(complex samples/sec), instead of 2*B* (real samples/sec) .

Computing only every other sample of the output sequence reduces the
sample-rate commensurate with the reduced Nyquist rate. The result is half
as many complex-valued samples as the original number of real samples. No
information is lost, and the original s(t) waveform can be recovered, if
necessary.

[image: complex sampling]

Fig1:Complex sampling in FFT GUI WX option

*Symbol:*

A symbol may be described as either a pulse in digital baseband
transmission or a tone in passband transmission using modems, representing
an integer number of bits. A theoretical definition of a symbol is a
waveform, a state or a significant condition of the communication channel
<https://en.wikipedia.org/wiki/Channel_%28communications%29> that persists
for a fixed period of time. A sending device places symbols on the channel
at a fixed and known symbol rate, and the receiving device has the job of
detecting the sequence of symbols in order to reconstruct the transmitted
data. There may be a direct correspondence between a symbol and a small
unit of data <https://en.wikipedia.org/wiki/Data>. For example, each symbol
may encode <https://en.wikipedia.org/wiki/Encoding> one or several binary
digits or 'bits'. The data may also be represented by the transitions
between symbols, or even by a sequence of many symbols.

The *symbol duration time*, also known as unit interval
<https://en.wikipedia.org/wiki/Unit_interval_%28data_transmission%29>, can
be directly measured as the time between transitions by looking into an eye
diagram <https://en.wikipedia.org/wiki/Eye_diagram> of an oscilloscope
<https://en.wikipedia.org/wiki/Oscilloscope>. The symbol duration time *T*s
can be calculated as:

where *f*s is the symbol rate.

[image: Inline image 1]

*A simple example*: A baud rate of 1 kBd = 1,000 Bd is synonymous to a
symbol rate of 1,000 symbols per second. In case of a modem, this
corresponds to 1,000 tones per second, and in case of a line code, this
corresponds to 1,000 pulses per second. The symbol duration time is 1/1,000
second = 1 millisecond [1 <https://en.wikipedia.org/wiki/Symbol_rate>].

Fig2:Constellation diagram for QPSK with Gray coding
<https://en.wikipedia.org/wiki/Gray_coding>. Each adjacent symbol only
differs by one bit.

You can see read more about sample rate in [2
<https://dsp.stackexchange.com/questions/25826/confusion-between-samples-per-second-and-samples-per-symbol>
]:

[image: Inline image 2]



A digital communications signal such as QAM can be generally written as top
equation (1)

where an are (possibly complex) amplitudes taken from a finite alphabet,
and the symbol rate is 1/T. The pulses p(t−nT) are often called "symbols".
Matlab commands that ask you to specify "samples per symbol" are asking how
many samples you want to use to define p(t)

Of course, since you know the pulse duration, specifying the samples per
symbol is an indirect way of specifying the sampling rate.

*Difference sample rate(data rate ) and buad rate:*

Bit rate is speed of data rate is expressed in Bit Per Second (bps). Data
Rate is showed with R, that is defined function of bit time, Tb:

[image: Inline image 3]

Buad Rate is number of signal pr symbels change persecond. It is more
general definition for Data Rate.

We define symbols in QAM
<https://en.wikipedia.org/wiki/Quadrature_amplitude_modulation> based
protocols.So If the baud rate is 4800 and there are two bits per symbol,
the number of symbols is 22 = 4. The bit rate is:

R = 4800 x 3.32 log(4) = 4800 x 2 = 9600 bits/s

I should mention that *symbol rate*, also known as *baud rate* and *modulation
rate* . For more info please see my previous blog post
<http://blog.stackprogramer.xyz/en/2017/06/17/difference-buad-rate-and-bit-rate/>
.

*Relation between sample per second and bandwidth:*

This below image is great is describe easily relation between sps and
bandwidth.For more info refer to this link
<https://community.plm.automation.siemens.com/t5/Testing-Knowledge-Base/Digital-Signal-Processing-Sampling-Rates-Bandwidth-Spectral/ta-p/402991>
.

[image: bandwidth vs sample per second]Fig3:Bandwidth vs sample per second

*Unideal Filters:*

A bandwidth of 1000 Hertz means that the sampling frequency is set to 2000
samples/second.

In fact, even with a sampling rate of 2000 Hz, the actual usable bandwidth
can be less than the theoretical limit of 1000 Hertz. This is because in
many data acquisition systems, there is an anti-aliasing filter
<https://community.plm.automation.siemens.com/t5/Testing-Knowledge-Base/Aliasing/ta-p/367750>
which starts reducing the amplitude of the signal starting at 80% of the
bandwidth. For more info see this
<https://community.plm.automation.siemens.com/t5/Testing-Knowledge-Base/Digital-Signal-Processing-Sampling-Rates-Bandwidth-Spectral/ta-p/402991>
link.

Figure 4 – At 80% of the bandwidth, a anti-aliasing filter starts reducing
the amplitude of the incoming signals. The 'Span' represents the frequency
range without any anti-aliasing filter effects.

*Subsampling(Periodic Waveform):*

If you display a buffer of raw data captured from a signal with higher
frequency than half the sample rate, you will still see a waveform; just
not the right one! Instead you will see an "alias", or *frequency shifted*
version of the waveform. If certain conditions are met, the alias is
unique, meaning you can "unwrap" the raw data to *reveal the true waveform*.
For more info see this <http://www.bitscope.com/adc/?p=3> link.
*Source*

The source can be an *analog* signal. *Example*: A Sound signal
*Input Transducer*

This is a transducer which takes a physical input and converts it to an
electrical signal (*Example*: microphone). This block also consists of
an *analog
to digital* converter where a digital signal is needed for further
processes.

A digital signal is generally represented by a binary sequence.
*Source Encoder*

The source encoder compresses the data into minimum number of bits. This
process helps in effective utilization of the bandwidth. It removes the
redundant bits (unnecessary excess bits, i.e., zeroes).
*Channel Encoder*

The channel encoder, does the coding for error correction. During the
transmission of the signal, due to the noise in the channel, the signal may
get altered and hence to avoid this, the channel encoder adds some
redundant bits to the transmitted data. These are the error correcting bits.
*Digital Modulator*

The signal to be transmitted is modulated here by a carrier. The signal is
also converted to analog from the digital sequence, in order to make it
travel through the channel or medium.
*Channel*

The channel or a medium, allows the analog signal to transmit from the
transmitter end to the receiver end.
*Digital Demodulator*

This is the first step at the receiver end. The received signal is
demodulated as well as converted again from analog to digital. The signal
gets reconstructed here.
*Channel Decoder*

The channel decoder, after detecting the sequence, does some error
corrections. The distortions which might occur during the transmission, are
corrected by adding some redundant bits. This addition of bits helps in the
complete recovery of the original signal.
*Source Decoder*

The resultant signal is once again digitized by sampling and quantizing so
that the pure digital output is obtained without the loss of information.
The source decoder recreates the source output.
*Output Transducer*

This is the last block which converts the signal into the original physical
form, which was at the input of the transmitter. It converts the electrical
signal into physical output (*Example*: loud speaker).
*Output Signal*

This is the output which is produced after the whole process. *Example* −
The sound signal received.

This unit has dealt with the introduction, the digitization of signals, the
advantages and the elements of digital communications. In the coming
chapters, we will learn about the concepts of Digital communications, in
detail.

For more info refer to tutorialpoint course this
<https://www.tutorialspoint.com/digital_communication/digital_communication_analog_to_digital.htm>
link.

*Interpolation:*

In the mathematical <https://en.wikipedia.org/wiki/Mathematics> field
of numerical
analysis <https://en.wikipedia.org/wiki/Numerical_analysis>, *interpolation*
is a method of constructing new data points
<https://en.wikipedia.org/wiki/Data_points> within the range of a discrete
set <https://en.wikipedia.org/wiki/Discrete_set> of known data points.

*Scrambler(Randomizer):*

In telecommunications <https://en.wikipedia.org/wiki/Telecommunication>, a
*scrambler* is a device that transposes or inverts signals or otherwise
encodes a message <https://en.wikipedia.org/wiki/Message> at the sender's
side to make the message unintelligible at a receiver not equipped with an
appropriately set descrambling device. Whereas encryption
<https://en.wikipedia.org/wiki/Encryption> usually refers to operations
carried out in the digital <https://en.wikipedia.org/wiki/Digital_data> domain,
scrambling usually refers to operations carried out in the analog
<https://en.wikipedia.org/wiki/Analog_transmission> domain. Scrambling is
accomplished by the addition of components to the original signal or the
changing of some important component of the original signal in order to
make extraction of the original signal difficult. Examples of the latter
might include removing or changing vertical or horizontal sync pulses in
television signals; televisions will not be able to display a picture from
such a signal. Some modern scramblers are actually encryption
<https://en.wikipedia.org/wiki/Encryption> devices, the name remaining due
to the similarities in use, as opposed to internal operation[2
<https://en.wikipedia.org/wiki/Scrambler>].

A scrambler (or randomizer) can be either:

   1. An algorithm that converts an input string into a seemingly random
   <https://en.wikipedia.org/wiki/Random> output string of the same length
   (e.g., by pseudo-randomly <https://en.wikipedia.org/wiki/Pseudo-random>
   selecting bits to invert), thus avoiding long sequences of bits of the same
   value; in this context, a randomizer is also referred to as a scrambler.
   2. An analog or digital source of unpredictable (i.e., high entropy),
   unbiased, and usually independent (i.e., random) output bits. A "truly"
   random generator may be used to feed a (more practical) deterministic
   <https://en.wikipedia.org/wiki/Deterministic> pseudo-random
   <https://en.wikipedia.org/wiki/Pseudo-random> random number generator
   <https://en.wikipedia.org/wiki/Random_number_generator>, which extends
   the random seed <https://en.wikipedia.org/wiki/Random_seed> value.

There are two main reasons why scrambling is used:

   - To enable accurate timing recovery on receiver equipment without
   resorting to redundant line coding. It facilitates the work of a timing
   recovery circuit
   
<https://en.wikipedia.org/w/index.php?title=Timing_recovery_circuit&action=edit&redlink=1>
   (see also Clock recovery <https://en.wikipedia.org/wiki/Clock_recovery>),
   an automatic gain control
   <https://en.wikipedia.org/wiki/Automatic_gain_control> and other
   adaptive circuits of the receiver (eliminating long sequences consisting of
   '0' or '1' only).
   - For energy dispersal on the carrier, reducing inter-carrier signal
   interference
   <https://en.wikipedia.org/wiki/Interference_%28communication%29>. It
   eliminates the dependence of a signal's power spectrum
   <https://en.wikipedia.org/wiki/Power_spectrum> upon the actual
   transmitted data, making it more dispersed to meet maximum power spectral
   density requirements (because if the power is concentrated in a narrow
   frequency band, it can interfere with adjacent channels due to the
   intermodulation <https://en.wikipedia.org/wiki/Intermodulation> (also
   known as cross-modulation) caused by non-linearities of the receiving
   tract).

*Fading:*

In wireless communications
<https://en.wikipedia.org/wiki/Wireless_communication>, *fading* is
variation of the attenuation <https://en.wikipedia.org/wiki/Attenuation> of
a signal with various variables. These variables include time, geographical
position, and radio frequency. Fading is often modeled as a random process
<https://en.wikipedia.org/wiki/Random_process>.

*Shadowing:*

In wireless systems, fading may either be due to multipath propagation
<https://en.wikipedia.org/wiki/Multipath_propagation>, referred to as
*multipath
induced fading*, or due to shadowing from obstacles affecting the wave
propagation <https://en.wikipedia.org/wiki/Wave_propagation>, sometimes
referred to as *shadow fading*.
*Random Errors:*

Error locations are independent of each other. Error on one location will
not affect the errors on other locations. Channels that introduce these
types of errors are called channels without memory (since the channel has
no knowledge of error locations since the error on location does not affect
the error on another location).
*Burst Errors:*

Errors are depended on each other. For example, in channels with deep
fading characteristics, errors often occur in bursts (affecting consecutive
bits). That is, error in one location has a contagious effect on other
bits. In general, these errors are considered to be dependent and such
channels are considered to be channels with memory.

*Interleaving:*

One of the most popular ways to correct burst errors is to take a code that
works well on random errors and interleave the bursts to “spread out” the
errors so that they appear random to the decoder. There are two types of
interleavers commonly in use today, block interleavers
<http://www.gaussianwaves.com/2010/10/block-interleaver-design-for-rs-codes-2/>and
convolutional interleavers[3
<http://www.gaussianwaves.com/2010/10/interleavers-and-deinterleavers-2/>].

http://blog.stackprogramer.xyz/en/2017/06/18/definition-of-some-of-important-elements-of-digital-communication/
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to