[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Viterbi--OFDM

From: Tobias Schmid
Subject: Re: [Discuss-gnuradio] Viterbi--OFDM
Date: Fri, 10 Sep 2010 00:13:29 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20100713 Thunderbird/3.0.6


I guess I explained to less. I'm using hard symbol coding. As I read in the documentation, I can use the trellis modulated Symbols how ever I want to. So on the transmitter side, I do not forward the trellis modulated symbols to a QAM modulator or something. I convert the generated fsm symbols let's say with 2 Bits per Byte with a unpacked_to_packed block back into a byte with all symbols use. So I have 4 trellis coded symbols in each byte. And the so coded bytes I forward to the ofdm_mod to transmit it.

On the receiver side, I take the packet handed over by the ofdm_demodulator "complete usual ofdm demodulation". So if no error occured i should get back bytes with 4 fsm hard symbols each. I take these bytes and make a pack_to_unpack and get back the 4 bytes with one 2bit fsm symbol each. this steam of chunks is than decoded by a hard_symbol viterbi. The principle is the same like in one of the trellis examples with an outer coding.

it should in an error free case be the same as taking the symbols generated by a tcm into a viterbi. the scheme is:

input(packet with leading and ending zeros to force defined states)---pack_to_unpack--tcm(hard_symbol)--unpack_to_pack--ofdm_mod--CHANNEL--ofdm_demod--pack_to_unpack--combined_viterbi(hard_symbol)--unpack_to_pack---

And I don't know why I doesn't work all the time.
Is there an error in my idea?



Am 09.09.2010 21:57, schrieb Veljko Pejovic:
Hi Tobias,

I'm trying to implement coded OFDM as well. I think we are following the same approach when it comes to the transmission, but I'm afraid I do not understand your receiver. When exactly do you do OFDM demodulation? combined_viterbi does demodulation of the BPSK, QAM, etc signal based on the given constellation.  However, OFDM decoding has to happen before that. The tricky part is that the OFDM blocks in gnuradio don't allow you to easily plug the combined_viterbi module. Are you putting it between ofdm_recv and ofdm_demod in the ofdm_demod class? If so, what about the control signal that tells you where the frame starts, which flows on the other ofdm_recv port? 



On Thu, Sep 9, 2010 at 7:10 AM, Tobias Schmid <address@hidden> wrote:

I've got another question. I implemented an OFDM-transmission eviroment and now I additionally added channel coding. It works fine, but when using trellis modulator and viterbi decoder, the packeterrorrate increases.

I realized the blockbuilding, using a message_queue counting the incomming items and when reached a certain limit, push it into an message source.
To realize the defined initial and final state, I added zeros at the end of each block using the python --struct-- module. These data blocks are converted to chunks and handed over to the trellis_modulator.
The outcoming chunks are, depending on there number of bits packt to shorts to transmit it using the ofdm_mod block.

Obn the receiver side the recieved block is unpackt using the inverse operation of the block after the trellis_mod und the tcm output symbols are handed over to the combined_viterbi afterwards packt to the original data stream. This stream is catched by a message queue as well and packets of the original length are reconstructed.

So my question is, what did I do wrong, to get an packet error rate, that is worse than the uncoded transmission. It seems to me, that some times in the transmission the viterbi works fine and corrects all the errors, but sometimes, it doesn't output any correct data.
Is there a solution to this problem?

Thanks alot for your help.


Neu: WEB.DE De-Mail - Einfach wie E-Mail, sicher wie ein Brief!    
Jetzt De-Mail-Adresse reservieren: https://produkte.web.de/go/demail02

Discuss-gnuradio mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]