Water Filling Algorithm For Ofdm Sysytems Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Orthogonal Frequency Division Multiplexing is a special case of multi carrier transmission, where a single data stream is transmitted over a number of lower rate subcarriers.

OFDM can be seen as either a modulation technique or a multiplexing technique. The new standard specifies bit rates up to 1 Gbps. OFDM's are today regarded as one of the most popular research areas of the wireless communication. In this paper we present an efficient water filling algorithm for multiuser OFDM. This algorithm is based on the multiuser water filling theorem and determines the sub channel allocation for a multiple access OFDM system. This approach maximizes the total bit rate under the constraints of user-individual power budgets. Once the sub channel allocation has been established, the bit and power allocation for each user can be determined with a single-user bit loading algorithm. This is due to the fact that OFDM can offer higher transmitting power utilisation over a traditional Single-Input Single Output (SISO) channel. In Shannon fano capacity theorem power is limited. The power loading for all sub channels is the major problem in OFDM systems, this problem can be rectified by using 'WATER FILLING ALGORITHM'.

Keywords: OFDM, SISO, Bit loading, Power loading, Water filling algorithm


Wireless communication has growth in development during the last few years and need of increasing high transmission rates to be able to accommodate the forthcoming services. Different assumptions are considered with the available information at either transmitter or receiver .The main performance of channel capacity is first introduced by Shannon as the maximal achievable transmission rate without any errors. The main drawback of the Shannon capacity for SISO system is Bandwidth limited and power constraint problem. Recently, there has been a growing interest in broadband multiple access systems like wireless local area networks, cellular mobile communication systems. Owing to their capability to combat multipath fading and frequency-selective interference, multicarrier systems have found their way into many wireless and wire line applications such as DAB, DVB-T, Hyper LAN, ADSL and they are discussed for future use in the 4G mobile communication. In this paper, we consider an algorithm which applies the multiuser water filling algorithm to Orthogonal Frequency Division Multiple Access (OFDMA) systems. A typical example for a multicarrier multiple access system is the uplink in a wireless LAN or in a mobile communication system, but the same technique can be applied to wireline systems such as the upstream in a bidirectional HFC network. In such environments, each user has its own transfer function and transmit power constraint. If the channel is known to the transmitter and the receiver, it can be shown that OFDMA with adaptive sub channels allocation and adaptive modulation is superior to other multiuser techniques like TDMA or CDMA. This is intuitively clear, as CDMA and TDMA do not make much use of channel state information (CSI) and are not adapted to a specific channel but are mostly used in systems where no CSI is available. Although adaptive bit loading only works perfect for time-invariant channels, it will offer benefits for slowly time-varying channels, too- especially when high spectral efficiency is demanded and fast channel estimation is available. For OFDM, a bit loading algorithm determines for each sub channels the power. For OFDMA, first the subcarrier allocation algorithm assigns the subcarriers to the users, and then a bit loading algorithm determines the power and number of bits on each subcarrier. Instead, we concentrate on the subcarrier allocation based on the multiuser water filling theorem. An algorithm which computes the power allocation for various sub channels.


The term "SISO" (Single Input Single Output), as applied to wireless technology, refers to the antenna technology that we uses a single antenna at both the transmitter side and the receiver side. SISO systems are the simplest form of antenna technology. With single antennas used, single frequencies are vulnerable to space limits and frequency fading. SISO systems are sometimes troubled by multipath fading effects. Electromagnetic waves are dispersed when they encounter signal-path obstructions like buildings, hills, tunnels, valleys and utility wires. "In a digital communications system, it can cause a reduction in data speed and an increase in the number of errors."

Bit Loading and Power loading

Bit loading is a technique used in multicarrier communication system (e.g. OFDM) to assign bits efficiently based on sub channel quality, which means, it allows more bits to be transmitted within higher quality sub channels and less bits within lower quality sub channels based on the SNR.The amount of bits that can be carried per sub channel depends upon the SNR at that particular frequency, lower SNR levels may need more power to transmit data and since each frequency is subject to an overall power limit, those frequencies are able to carry less bits than a sub channel with a better SNR.

If the SNR is more for particular sub channel then the power allocated to particular sub channel will be more.

If the SNR is weaker for particular sub channel then the power allocated for that sub channel is less.

If there's insufficient SNR in the channel, then the Sub channel is unusable.

The higher frequencies tend to carry fewer bits purely because the SNR isn't as good for those channels.  Higher frequencies are more likely to be attenuated, therefore the SNR isn't as good and consequentially the sub channels for those frequencies can't carry as many data bits.   As long as the SNR at that particular frequency is good then modulation will load x no of bits to the sub channel regardless if it is a high or low frequency. Lines which are more attenuated will see SNR decrease more rapidly at the higher frequencies hence less bit allocation overall and less power allocation.

Orthogonal frequency division multiplexing (OFDM) is a practical technique for communicating over broadband channels in multi-path fading environments. It is well known that varying the power allocation from frequency tone-to-frequency tone, commonly called power loading, can improve capacity or error rate performance. Unfortunately, the implementation of power loading is complicated by the fact that the transmitter must have knowledge of the channel. The capacity of the OFDM can be increased by allocating the power to the sub-channels based on the channel condition. If the channel parameters are unknown at the transmitter and known at the receiver, equal power is allocated to each transmitter and estimates the capacity using water filling algorithm.

Water Filling Algorithm

The water filling algorithm is proposed for to avoid the power loading problem, Here the fixed amount of water (standing for transmit power) being poured in the container with a number of connected regions, each having a different depths (standing for noise power).the water distributes itself in such a way that a constant water level is attained across the whole container.

The loading of multichannel transmission system can be done by the following way:

The sum of power allocated to all sub channels consumes all the available transmit power, maintained at the constant value P.

We eliminate the sub channels from consideration those we have the high Noise to Signal power.

Pn+ (Γσn2 /gn2) =K, for n=1, 2,…….N (1)

For the prescribed value of the constant K.

The sum of power Pn allocated to channel n and the scaled noise power (Γ/gn2) satisfies the constraint of above equation for all the sub channels for a prescribed value of constant K.

We can use the above equation for the set of simultaneous equation

P1 +P2 +……….……….+Pn=P (2)

P1-K = -Γσ2 /gn2 (3)

P2-K = -Γσ2 /gn2 (4)

Pn-K = -Γσ2 /gn2 (5)

We have to obtain the solution for the unknowns P1, P2,……..Pn and K . We should always find that K is positive, but it is possible for some of the powers of the sub channels can be negative. The negative power sub channels (Pn) are discarded as power cannot be negative.

Results and Discussion:

Fig 1. Channel capacity of SISO (Capacity (bits/s/Hz) vs SNR (dB))

The channel capacity of SISO varies with SNR as per the following equation given by

C=B log2(1 + SNR) (6)

The Fig 2. shows result of water filling algorithm, Here the constant power is K=3.167, then the individual sub channel Noise to signal powers are calculated and if the noise power doesn't crosses K then the transmit power is filled up till constant level, else if noise to signal power crosses the constant level K, then that sub channels are just discarded, in the Fig 2. 3rd, 6th sub channels are discarded from power loading.

Fig 2. Power allocation for sub channels using Water Filling algorithm

The power allocation for individual sub channels is done as per water filling algorithm as follows

For the sub channel 1 initially the noise to signal ratio is calculated as 2dB, then remaining 1.167 (3.167-2) is filled with transmit power.

For the sub channel 2 the noise to signal ratio is calculated as 3dB, then remaining 0.167 (3.167-3) is filled with transmit power.

For the sub channel 3 the noise to signal ratio is calculated, and the value is greater than K (3.167-5) i.e. negative power, so this sub channel is eliminated.

For the sub channel 4 the noise to signal ratio is calculated as 1dB, then remaining 2.167 (3.167-1) is filled with transmit power.

for the sub channel 5 the noise to signal ratio is calculated as 3dB, then remaining 0.167 (3.167-3) is filled with transmit power

For the sub channel 6 the noise to signal ratio is calculated, and the value is greater than K (3.167-5) i.e. negative power, so this sub channel is eliminated.

For the sub channel 7 the noise to signal ratio is calculated as 3dB, then remaining 0.167 (3.167-3) is filled with transmit power.

For the sub channel 8 the noise to signal ratio is calculated as 2dB, then remaining 1.167 (3.167-2) is filled with transmit power.

As the Noise to Signal power increases then the Signal to Noise Power which we have to allocate decreases and vice-versa.

So the total Signal to Noise power allocated for 1 to 8 sub channels is equal to available transmitted power(5).

Pn= (1.167+0.167+0+2.167+0.167+0+0.167+1.167) =5


By the implementation of Water Filling Algorithm the capacity of the OFDM systems is further increased by solving the problem of power loading in the sub-channels. An OFDM system supports the High channel capacity so that we considerably achieve High Speed data Transmission.