DSPRelated.com
Forums

waterfilling for single user ofdm

Started by nekiy May 31, 2005
Hi,

i'm trying to simulate waterfilling for single user ofdm in matlab. i
can't seem to find any reference on this topic as most papers deal with
multiuser or multiple access ofdm system. Papers which mentioned
watefilling for single user ofdm stopped short at providing simply the
formula and not the implementation. im new to waterfilling and ofdm and
thus need some help.

I understand that for waterfilling, we are supposed to load each sub
channel with different number of bits depending on the snr of each
sub-channel. Does this mean using different modulation scheme for
different subchannels? Are there any other ways that waterfilling can be
carried out but keeping the modulation scheme constant for all
subchannels? 

Thank you very much.

..Nekiy


		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
On Tue, 31 May 2005 07:06:23 -0500, "nekiy" <y_i_k_e_n@yahoo.co.uk>
wrote:

>Hi, > >i'm trying to simulate waterfilling for single user ofdm in matlab. i >can't seem to find any reference on this topic as most papers deal with >multiuser or multiple access ofdm system. Papers which mentioned >watefilling for single user ofdm stopped short at providing simply the >formula and not the implementation. im new to waterfilling and ofdm and >thus need some help. > >I understand that for waterfilling, we are supposed to load each sub >channel with different number of bits depending on the snr of each >sub-channel. Does this mean using different modulation scheme for >different subchannels? Are there any other ways that waterfilling can be >carried out but keeping the modulation scheme constant for all >subchannels? > >Thank you very much. > >..Nekiy
Nekiy, You might try searching on "Adaptive Bit Loading" which is a more often used term than "waterfilling" for this idea. In general, though, you're right that the idea is just that a different modulation order is used per tone based on the SNR or power detected in that tone. In some cases the transmit power per tone is also adjusted (sometimes called adaptive power loading, and if you do both it's called ABPL or something like that). Regulatory and PAPR concerns usually inhibit adaptive power loading, and adaptive bit loading requires timely feedback in the channel. Getting the feedback is critical and most standards today do not provide a mechanism to facilitate this. Another key ingredient is the adaptation algorithm. There are lots of them out there and some work well and some don't. FWIW, I proposed this in 802.11n a year and a half ago with little success. At the moment everyone is enamored with MIMO, which is hoped to solve the larger rate problem. Since adaptively changing the number of bits in a symbol seriously complicates the interleaving problem we proposed using an LDPC FEC instead, which is generally immune to interleaver effects (e.g., you can delete the interleaver). If you're using a FEC like a convolutional code you may need to find a workaround to the interleaving problem. Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org
Hi Eric, 

Thanks for the reply. 

Actually my main problem now is that I do not know what power constraint
to set as I simply want to simulate an OFDM system with water-filling and
compare the system with one which merely uses very strong channel coding
and no adaptive modulation. I want to compare the transmission rate
achievable by both system. 

Is it possible to give me an insight on how I can go about setting the
power constraint or perhaps omit it, as the other system I'm comparing
does not deal with power constraint at all. 

Thank you very much.

.. Nekiy


		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
Nekiy,

Ah, I think I understand.   Do you mean that you're struggling with
how to measure the received power in order to compute SNR?  If you
have any sense of how the system AGC might work in what you're trying
to simulate that can be a good guide sometimes.

Believe it or not this is something that people really struggle with
when analyzing this, and picking the wrong metric can give really
strange results.

I can tell you my preference, which is only that.  Transmit equal
power on each tone, in the receiver use total power over total noise
for SNR.

There are tradeoffs around using "ensemble average" SNR and "per
instance" SNR with the ensemble average seeming to provide the most
useful results.  Since ABL systems can allow system adjustment of
packet error rate by adjusting the adaptation thresholds, showing
throughput vs ensemble average SNR and ALSO PER vs the same SNR metric
is most revealing.   Showing one without the other may not tell the
whole story.

I'm not sure that I'm answering your question, but I will say that
this is something that can stump folks when looking at this.

Cheers,

Eric

On Mon, 06 Jun 2005 09:50:43 -0500, "nekiy" <y_i_k_e_n@yahoo.co.uk>
wrote:

>Hi Eric, > >Thanks for the reply. > >Actually my main problem now is that I do not know what power constraint >to set as I simply want to simulate an OFDM system with water-filling and >compare the system with one which merely uses very strong channel coding >and no adaptive modulation. I want to compare the transmission rate >achievable by both system. > >Is it possible to give me an insight on how I can go about setting the >power constraint or perhaps omit it, as the other system I'm comparing >does not deal with power constraint at all. > >Thank you very much. > >.. Nekiy > > > >This message was sent using the Comp.DSP web interface on >www.DSPRelated.com
Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org
> i'm trying to simulate waterfilling for single user ofdm in matlab. i > can't seem to find any reference on this topic...
My favourite paper on this topic is... @ARTICLE(willink97optimization, author = {T. J. Willink and P. H. Wittke}, title = {Optimization and performance evaluation of multicarrier transmission}, journal = IEEE_J_IT, volume = {43}, number = {2}, pages = {426--440}, month = mar, year = {1997} ) which isn't cited very often, maybe because it appeared in IEEE Transactions on Information theory, which often doesn't provide practical papers for communications engineers (as opposed to IEEE Trans. Comm say). This paper gives the overall optimal bit-loading solution, for max. rate and fixed power. In fact, this again is somewhat impractical, so a much simpler scheme is given in @ARTICLE(cioffi91primer, author = {J. M. Cioffi}, title = {A Multicarrier Primer}, journal = {Amati Communication Corporation and Stanford University , T1E1.4/91-157}, year = {1991}, month = nov, ) which is available online I think. This gives simple bit-loading without the non-linear programming methods in the previous paper.
> I understand that for waterfilling, we are supposed to load each sub > channel with different number of bits depending on the snr of each > sub-channel. Does this mean using different modulation scheme for > different subchannels? Are there any other ways that waterfilling can be > carried out but keeping the modulation scheme constant for all > subchannels?
Well obviously, you can vary the power on each subchannel, rather than the constellation size. However, this can be impractical (amplifier linearity) and even prohibited (spectral masks for EMC reasons).
On 9 Jun 2005 06:52:03 -0700, porterboy76@yahoo.com wrote:

>> i'm trying to simulate waterfilling for single user ofdm in matlab. i >> can't seem to find any reference on this topic... > >My favourite paper on this topic is... > >@ARTICLE(willink97optimization, > author = {T. J. Willink and P. H. Wittke}, > title = {Optimization and performance evaluation of multicarrier >transmission}, > journal = IEEE_J_IT, > volume = {43}, > number = {2}, > pages = {426--440}, > month = mar, > year = {1997} >) > >which isn't cited very often, maybe because it appeared in IEEE >Transactions on Information theory, which often doesn't provide >practical papers for communications engineers (as opposed to IEEE >Trans. Comm say). This paper gives the overall optimal bit-loading >solution, for max. rate and fixed power. In fact, this again is >somewhat impractical, so a much simpler scheme is given in > >@ARTICLE(cioffi91primer, > author = {J. M. Cioffi}, > title = {A Multicarrier Primer}, > journal = {Amati Communication Corporation and Stanford University >, T1E1.4/91-157}, > year = {1991}, > month = nov, >) > >which is available online I think. This gives simple bit-loading >without the non-linear programming methods in the previous paper.
One thing I've observed is that the really good algorithms for ABL also seem to be really complicated. An algorithm using mutual information looks extremely promising, but might still be tough to build. Fortunately, the difference in performance between the really good algorithms and some more practical algorithms isn't large, so there's still hope. ;) Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org
> Fortunately, the difference in performance between the really good > algorithms and some more practical algorithms isn't large...
Very true. Have a look at this one... http://ieeexplore.ieee.org/iel5/9084/28824/01296355.pdf
porterboy76@yahoo.com wrote:
>>Fortunately, the difference in performance between the really good >>algorithms and some more practical algorithms isn't large... > > > Very true. Have a look at this one... > http://ieeexplore.ieee.org/iel5/9084/28824/01296355.pdf
Error 404--Not Found From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: 10.4.5 404 Not Found The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent. If the server does not wish to make this information available to the client, the status code 403 (Forbidden) can be used instead. The 410 (Gone) status code SHOULD be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable and has no forwarding address. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
"Jerry Avins" <jya@ieee.org> wrote in message
news:A7-dnaHMUvOAOzTfRVn-pQ@rcn.net...
> porterboy76@yahoo.com wrote: > >>Fortunately, the difference in performance between the really good > >>algorithms and some more practical algorithms isn't large... > > > > > > Very true. Have a look at this one... > > http://ieeexplore.ieee.org/iel5/9084/28824/01296355.pdf > > Error 404--Not Found > From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: > 10.4.5 404 Not Found > > The server has not found anything matching the Request-URI. No > indication is given of whether the condition is temporary or permanent. > > If the server does not wish to make this information available to the > client, the status code 403 (Forbidden) can be used instead. The 410 > (Gone) status code SHOULD be used if the server knows, through some > internally configurable mechanism, that an old resource is permanently > unavailable and has no forwarding address.
For me, it re-directs to a login screen. Maybe try again.
Jon Harris wrote:
> "Jerry Avins" <jya@ieee.org> wrote in message > news:A7-dnaHMUvOAOzTfRVn-pQ@rcn.net... > >>porterboy76@yahoo.com wrote: >> >>>>Fortunately, the difference in performance between the really good >>>>algorithms and some more practical algorithms isn't large... >>> >>> >>>Very true. Have a look at this one... >>>http://ieeexplore.ieee.org/iel5/9084/28824/01296355.pdf >> >>Error 404--Not Found >> From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: >>10.4.5 404 Not Found >> >>The server has not found anything matching the Request-URI. No >>indication is given of whether the condition is temporary or permanent. >> >>If the server does not wish to make this information available to the >>client, the status code 403 (Forbidden) can be used instead. The 410 >>(Gone) status code SHOULD be used if the server knows, through some >>internally configurable mechanism, that an old resource is permanently >>unavailable and has no forwarding address. > > > For me, it re-directs to a login screen. Maybe try again.
I get the log-in screen also. That was what came after. ... Still does. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;