The VLC Codecs and the OFDM

Keywords

- OFDM (Orthogonal Frequency-Division Multiplexing)
- PLC (Power-Line Communication)
- G3-PLC
- Prime-PLC
- HomePlug AV
- HomePlug Green PHY
- Smart Grid
- Smart City
- FFT (Fast Fourier Transform)



Abstract

The OFDM (Orthogonal Frequency-Division Multiplexing) is a method of coding signals in the form of multiple subcarriers by distributing the data on different frequencies. It uses FFT (Fast Fourier Transform) and is commonly used in most broadband communications. These include: the Digital Video Broadcasting (DVB-T and DVB-H), the Digital Audio Broadcasting (DAB), the ADSL, the Power-Line Communications (PLC, HomePlug, G3-PLC, Prime-PLC), the wireless local area networks (for example, 802.11a, 802.11g or WiFi, 802.16 or WiMAX), and the new generation mobile networks (LTE, 4G).
With the OFDM, all types of data, including the data from the VLC codecs, are carried. Nevertheless, by using the properties of these codecs (notably the background) and the properties of the data types (in particular the number of frames per second), it is possible to significantly increase the number of subcarriers as well as the range of communications, and decrease the energy consumption. This document focuses only on the power-line communications, used in particular with the Smart Grids, the Internet of Energy, the smart cities, and the electric cars.

General Information on the Power-Line Communications

The communications with the PLC rely on the OFDM modulation.
For more information on the PLC and the OFDM, see at the following addresses:
   - OFDM
   - Power-Line Communication
   - HomePlug
   - G3-PLC

We recall here the main characteristics of the four main standards. The first two were developed for the long distances while the last two were developed for the short distances.

- G3-PLC
Sampling rate: 400 kHz
FFT buffer size: 256
Cyclic prefix size: 30
Number of subcarriers: 36
Bandwidth: 35.9-90.6 kHz
Subcarrier spacing: 1.5625 kHz
Maximum bit rate: 33.4 Kbps
Modulations: DBPSK, DQPSK
Windowing: yes

- Prime-PLC
Sampling rate: 250 kHz
FFT buffer size: 512
Cyclic prefix size: 48
Number of subcarriers: 97
Bandwidth: 42-89 kHz
Subcarrier spacing: 488 Hz
Maximum bit rate: 128.6 Kbps
Modulations: DBPSK, DQPSK, D8PSK
Windowing: no

- HomePlug AV
Sampling rate: 75 MHz
FFT buffer size: 3072
Cyclic prefix size: variable
Number of subcarriers: 1155
Bandwidth: 1.8-30 MHz
Subcarrier spacing: 24.414 kHz
Maximum bit rate: normal mode: 20-200 Mbps, ROBO mode (QPSK): 4-10 Mbps
Modulations: adaptive modulation from BPSK, QPSK, 16 QAM, 64 QAM, 256 QAM, to 1024 QAM, depending on the subcarrier
Windowing: yes

- HomePlug Green PHY
Sampling rate: 75 MHz
FFT buffer size: 3072
Cyclic prefix size: variable
Number of subcarriers: 1155
Bandwidth: 1.8-30 MHz
Subcarrier spacing: 24.414 kHz
Maximum bit rate: ROBO mode: 4, 5 et 10 Mbps
Modulation: QPSK
Windowing: yes

Remarks:
- With the HomePlug standards, in ROBO (Robust OFDM) mode, the data are transmitted in QPSK, redundantly using multiple sub-carriers.
In mini ROBO (4 Mbps), there are 5 copies.
In standard ROBO (5 Mbps), there are 4 copies.
In high speed ROBO (10 Mbps), there are 2 copies.

- Other HomePlug standards exist such as HomePlug 1.0 or HomePlug AV2.
With the HomePlug AV2 standard:
Sampling rate: 200 MHz
FFT buffer size: 8192
Number of subcarriers: 3455
Bandwidth: 1.8-86.13 MHz
Subcarrier spacing: 24.414 kHz
Maximum bit rate: normal mode: 581-1516 Mbps, ROBO mode (QPSK): 4-10 Mbps
Modulations: adaptive modulation from BPSK, QPSK, 8 QAM, 16 QAM, 64 QAM, 256 QAM, 1024 QAM , to 4096 QAM, depending on the subcarrier

- The maximum bit rates relate to the physical layer. At the MAC layer, these rates are lower.
- With the G3-PLC, in robust mode, the maximum bit rate is less than 6 Kbps.



Properties of the Background of the VLC Codecs

The VLC codecs have been developed from audio signals (voice and music). They use FFT, the greatest points (the points of greatest magnitude) and the most energetic bands.
For more information on these codecs, see at the following addresses:
   - Algorithms
   - Home Page

In this document, we recall the very important properties of the background that will be used:

- We keep only the most energetic bands. So the background can support losses of entire bands.
It is also possible to use all the bands or an adjacent zone of bands. in this case, there is no need to transmit the numbers of the selected bands.
- Inside each band, decimations can be made. For example, with the simple decimation, we keep the largest point out of two, with the double decimation, we keep the largest point out of four.
If decimations are performed, one additional bit (single decimation) or two additional bits (double decimation) are required to locate the position of the point retained in the band.
- We do not take into account the phases in the background. We can just keep a sign bit (sign of the phase) to avoid that there are only sums during the decompression.
- If we perform an inverse FFT with just the points of the background, we see that the crest factor is very low.
- The total number of points in the background is proportional to the size of the FFT buffers, unlike the number of points in the foreground that depends only on the number of the useful frequencies.
For example, for FFT buffers of 256, 512, 1024, 1536 or 3072 points, there are 128, 256, 512, 768 and 3072 FFT bins (points in the frequency domain). One can settle for 12 to 48 points for the foreground (case of the voice with a good quality, for sampling rates of 8, 16, 32, 48 and 96 kHz). The rest of the points constitute the background, grouped into bands.
- The magnitudes of the background are coded with less precision than those of the foreground.
If one encodes the magnitudes with the logarithm, one can take for example 6 to 8 bits for the points of the foreground and 3 bits for the points of the background. In addition, these values can be forced to remain in the range 0-3 instead of 0-7, resulting in a saving of one more bit.
The background can be easily transmitted using modulations like DQPSK or QPSK with a minimum of subcarriers.

In summary, the background taken completely or largely on the transmitter side, is compatible with the transmissions with attenuations and losses on the receiver side. It just remains to transmit the foreground correctly.

Supported Data Types

All one-dimensional signals are concerned.
We can cite:

- The audio (voice and music).
The order of magnitude is 20 to 50 FFT frames per second.

- The vital signs (ElectroCardioGram or ECG, ElectroEncephaloGram or EEG, ElectroMyoGram or EMG, arterial blood pressure, ...).
They can be treated as low frequency audio signals.

- The sensor data.
One is interested in regular readings like a statement every half a second, once a second, once every four seconds.
For example, if you take a reading every two seconds, after 10 minutes you will have 300 points. One can take 300 points or 512 points FFT buffers (completed by 212 zeros) and send them as if they were audio data.
If the readings are not regular, interpolations must be done to make them regular.

- The discrete health data (data from continuous heartbeat monitoring, continuous glucose monitoring, ...).
These data are to be treated as the data of the sensors.

- The images.
The images can be compressed at a level of a so-called intermediate space or at the level of the k-space, in one-dimensional mode.
For more information, see at the following address:
   - Taking into Account a So-Called Intermediate Space

Each bin of a line (in the frequency domain) corresponds to one or more subcarriers. The total number of lines and the number of color planes must be taken into account.
The transmissions of the images require more subcarriers. It takes a higher speed of modulation if we want to accelerate the transmission times.

- The video.
For the video, it is also necessary to take into account the number of video frames per second. The transmissions of the video images require more subcarriers. It takes a higher speed of modulation if we want to perform live transmissions.



Long Distance Communications and Low Consumption

With the images and the video, we target the short and medium distances while with the other signals we target the long distances.

Taking into account the type of data, thus the number of frames per second or the minimum modulation speed, it is possible to increase the number of subcarriers. This increase allows:
- to extend the transmission times, therefore the transmission distances;
- to have more subcarriers for redundancies (robust modes) in the transport of the foreground;
- to extend the guard intervals if necessary, thus avoiding collisions between frames;
- to use a certain redundancy and a simple verification means allowing at the same time to reduce the crest factor;
- to insert null subcarriers at the beginning and end of the bandwidths allowing to limit the out-of-band emissions;
- to make Ultra-Narrow Band (UNB) communications using only a few sub-carriers;
- to avoid the high frequencies where the distortions are the strongest;
- to reduce the sampling rate if necessary or useful.

Example:
For the sampled voice at 8000 Hz and a FFT buffer size of 256 (or sampled at 16000 Hz and a FFT buffer size of 512), there are 31.25 frames per second (frame duration = 32 milliseconds). The background is composed of 128 bins maximum counting the bins corresponding to the bins of the foreground set to zero (or 256 bins that can be limited to the first 128 bins for the second case).
Total emission times of less than 32 milliseconds must be used. If symbol transmission times of 20 milliseconds are used, there will be a 50 Hz spacing between the subcarriers, we will theoretically have at our disposal the half of the subcarriers below:
- 8000 subcarriers with a sampling rate of 400 kHz (G3-PLC).
- 5000 subcarriers with a sampling rate of 250 kHz (Prime-PLC).
- 3840 subcarriers with a sampling rate of 192 kHz (possible choice).
- 1920 subcarriers with a sampling rate of 96 kHz (possible choice).

For the background, we implement the simple decimation as follows:
- we add a bit for the position of the greatest bin;
- we repeat the greatest bin by replacing the smallest bin;
- the phases of the subcarriers encoding the repeated bin are reversed in order to minimize the crest factor;
For example, in QPSK, the subcarriers of bits 11 and bits 00 have opposite phases. Likewise, the subcarriers of bits 10 and bits 01 have opposite phases.
So we introduce a certain redundancy and a simple means of verification. In case of inconsistency, one can either ignore the bin or take the bin of smaller magnitude.

For the foreground, we implement the same type of repetition, in order to minimize the crest factor. If we need to implement additional repetitions, we must note that we already have a double redundancy.

The first subcarriers are not used to avoid the low frequencies or to comply with the regulatory limits.

The following subcarriers, until the background points are exhausted, contain the data of the points of the background (magnitudes and signs of the phases). If we use 3 bits per point (3 bits limited to two, plus the sign of the phase) and the simple decimation, each point of the background requires 4 bits, so two subcarriers in DQPSK or QPSK modulation (2 bits by subcarrier). It takes a maximum of 128x2 = 256 subcarriers to carry the entire background.
To increase the quality, one or two subcarriers can be added per point to carry an additional phase on one to four bits.

With some of the rest of the subcarriers, the points of the foreground are carefully transmitted. Methods from the PLC protocols mentioned above can be applied. Modulations such as DQPSK or QPSK (2 bits per subcarrier) will preferably be used.
In audio, with 16 bits per point of the foreground (magnitudes, positions, phases), we obtain a good quality. If we choose 16 points we will have 256 bits to transmit per frame, so we will need 256/2 = 128 additional subcarriers. With the redundancy, 256 additional subcarriers are required.
It just takes a modulation to transmit an entire frame.
In this area, there are enough subcarriers to use the Reed-Solomon coding, the convolutional coding, and the additional coding of the repetitions.

If one does not use all the points of the background or a contiguous area, one must transmit the numbers of bands retained. These numbers are to be transmitted before or after the points of the foreground, following the principles of the preceding paragraph. In this case, the total number of subcarriers provided for the background is reduced.

Case of the images:

To fix the ideas with a concrete example, we take the values of the preceding example, in particular the same spacing between the subcarriers (50 Hz). We consider an image of 720 columns and 576 lines, with 3 color planes. For a maximum of compression, one chooses the k-space and one uses the properties of symmetry to consider only a half-plane. Finally, one keeps only the half of the lines and the half of the columns of this half-plane.

We need 720 / (2x2) = 180 bins per line for the background, so 180x(576/2)x3 = 155520 bins to transmit, so 155520x2 subcarriers.
We must add subcarriers if we want to carry an additional phase on one to four bits.
If there are 96 minimum subcarriers for all the points of the foreground (12 points in total), one needs a total of (180x2 + 96)x288x3 minimum subcarriers without redundancy in the foreground, and (180x2 + 96*2)x288x3 minimum subcarriers with redundancy.
It is necessary to increase the sampling rate (beyond 400 kHz).
By using 8000 subcarriers (which use a 400 kHz bandwidth), it takes about 59.6 modulations to transmit this image with redundancy.

The Reed-Solomon coding, the convolutional coding, and the additional coding of the repetitions only apply to the foreground.
To reduce the number of subcarriers in the background, modulations such as 8 QAM and 16 QAM (3 or 4 bits per subcarrier) can be used and the opposite amplitudes and phases can be used to reduce the crest factor.

Case of the video:

Video with images of 720 columns, 576 lines, 3 color planes and 25 frames per second.
We choose the k-space and 12 points for the foreground.
We take into account the symmetry and we keep only a part of the lines and a part of the columns (35% = 0.35, so we have 126 bins per line and 202 lines).
As in the previous examples, the DQPSK or QPSK modulations are selected for the background and the foreground.
It takes (126x2 + 96*2)x202x3x25 minimum subcarriers per second to transmit this video in live.
If 8000 subcarriers are selected, a minimum modulation speed of 841 Hz is required.
We can choose the following values:
Subcarrier spacing: 1 kHz
Number of subcarriers: 8000
Bandwidth used: 8 MHz
Possible FFT buffer size: 20000
Sampling rate: 20 MHz

Video with images of 720 columns, 480 lines, 3 color planes and 30 frames per second.
Number of minimum modulations per second: 840 Hz ((126x2 + 96*2)*168*3*30) / 8000).
We can choose the following values:
Subcarrier spacing: 1 kHz
Number of subcarriers: 8000
Bandwidth used: 8 MHz
Possible FFT buffer size: 20000
Sampling rate: 20 MHz

The video is for use with the short distances. However, the transmission distances can be significantly increased.
The Reed-Solomon coding, the convolutional coding, and the additional coding of the repetitions only apply to the foreground.. In this case, it will be necessary to increase the spacing between the sub-carriers without having to exceed 2 kHz.

Codebook Version

With the codebook version of the VLC codecs, for media that support this version (for example the voice and the quasi-stationary signals), we can replace an entire one-dimensional frame with two short integers (or four short integers, if we consider the amplitude of the sines and the amplitude of the cosines). In this case, just 32 bits or 16 subcarriers are required for the entire frame (64 bits or 32 subcarriers in the second case).
For more information on the codebook version, see at the following addresses:
   - Codebook Version
   - Unilateral Codebook Version

Notes

- All of the above operations are compatible with the partial frame overlapping performed at the VLC codecs level.

- All of the above operations are compatible with the scrambling of the foreground and of the positions of the bands.

- A high crest factor is one of the main drawbacks of the OFDM modulation because it causes a lot of extra work for the power amplifiers. The use of modulations like DBPSK, BPSK, DQPSK or QPSK makes it possible to reduce this effect but does not make it possible to suppress it.

- To minimize the Out-of-Band (OOB) emissions, one can reserve a few subcarriers at the beginning (before the background) and at the end (after the foreground or the positions of the bands), by not transporting information with them.

- One is not always entitled to a large bandwidth. For example, on the distribution networks, 4 bands are defined:
- 9-95 KHz: bandwidth reserved for the distributor;
- 95-125 and 140-148.5 KHz: bandwidth reserved for home automation without access protocol;
- 125-140 KHz: bandwidth reserved for home automation with access protocol.

- At very low bitrate, our methods can be compatible with Ultra-Narrow Band (UNB) communications, using only a few subcarriers, each subcarrier occupying between 50 and 100 Hz.

Fundraising

We will organize a fundraising to manufacture multi-mode PLC modems,
- compatible with the standards and protocols described in this document, in the general case;
- offering modes to implement our protocols.
It will first be necessary to test and specify the gains and limits in terms of distance, bitrates and energy consumption.
The results will be easily applicable to the physical media targeted by the IEEE P1901 standard and the ITU-T G.hn standard, ie, in addition to the power lines:
- the telephone cables;
- the coaxial cables;
- the plastic optical fibers.
Since the methods used are similar to those used in 4G LTE-M, the results will be easily applicable to the cellular networks, by adapting the spacings between the subcarriers. The generated frames will be compatible with the subframes of the 5G, the future standard of mobile telephony.