On Fri, Jan 29, 2016 at 12:52 AM, Gonzalo Arcos <gonzaloarco...@gmail.com> wrote:
> Thank you for your answer Tom. > > I infer from your mail that changing the value of K might as well mean > building the decoder from scratch. Which leads to my next question, is > there any tutorials on how to program a viterbi decoder for an arbitrarily > value of K in an optimized way? does anyone know? I need to be able to > increase the performance of this process.. Maybe another possibility is > stick with IT++ and use something like gpgpu to speedup the process? > What do you guys think? Do you have any suggestion? > > I have my reserves about gpgpu being useful in this scenario where the > incoming packet rate is very high, and therefore the transfer of data > between the main system and the gpu would be frequent and repeated. At the > same time, im running out of ideas. > > Thanks a lot for the answers so far. > Check out the Spiral Project: http://www.spiral.net/software/viterbi.html Tom > 2016-01-28 20:41 GMT-03:00 Tom Rondeau <t...@trondeau.com>: > >> On Fri, Jan 29, 2016 at 12:38 AM, Gonzalo Arcos <gonzaloarco...@gmail.com >> > wrote: >> >>> Hello Tom, >>> >>> Thank you for your answer. >>> >>> I dont see how using the viterbi decoder from gr-fec would fix my >>> problem. I would still need the viterbi decoder to work on K=5 to be able >>> to integrate it with gr-ieee802-11, it is the same situation i am now with >>> the decoder i linked. My question is first if there is a highly optimized >>> decoder at least for 1/2 K=5, or in case it does not exist, if it is >>> possible for me to modify an existing implementation. I repeat, i am a >>> novice in the field of convolutional decoding. >>> >>> Thanks >>> >> >> Apologies, I misread your first email and swapped the constraint lengths. >> >> But no, modifying the implementation for different values of K is /not/ >> trivial. >> >> Tom >> >> >> >> >>> 2016-01-28 20:05 GMT-03:00 Tom Rondeau <t...@trondeau.com>: >>> >>>> On Thu, Jan 28, 2016 at 11:13 PM, Gonzalo Arcos < >>>> gonzaloarco...@gmail.com> wrote: >>>> >>>>> The dvbt project im talking about is: >>>>> https://github.com/gnuradio/gnuradio/tree/master/gr-dtv/lib/dvbt >>>>> >>>>> And the gr-ieee-80211 project is: >>>>> https://github.com/bastibl/gr-ieee802-11 >>>>> >>>>> thanks in advance >>>>> >>>> >>>> >>>> We have a highly optimized Viterbi decoder for K=7, rate 1/2 in gr-fec, >>>> which is done mostly in a VOLK kernel. Those parameters (R=1/2, K=7) are >>>> fixed, but the polynomials can be set externally. >>>> >>>> Tom >>>> >>>> >>>> >>>> >>>>> 2016-01-28 19:11 GMT-03:00 Gonzalo Arcos <gonzaloarco...@gmail.com>: >>>>> >>>>>> I am trying to optimize the current performance of gr-iee802-11. Ive >>>>>> done some profiling and came to the conclusion that there is a lot of >>>>>> work >>>>>> being put in decoding the convolutional code at the receiver. >>>>>> >>>>>> I have done some research, and found out that there exists a viterbi >>>>>> decoder that was developed for the digital tv branch, that supposedly >>>>>> outperforms IT++ by a factor of 9x!, IT++ being the library that >>>>>> gr-iee802-11 uses to decode the convolution. >>>>>> >>>>>> When trying to adapt this decoder to gr-iee802-11 ive found some >>>>>> hassles. First, the constraint length for the viterbi decoder in dvbt is >>>>>> K >>>>>> = 7, while in gr-ieee802-11 uses a constraint length of K=5. >>>>>> In addition, the generator polynomials also differ. >>>>>> >>>>>> I would appreciate if someone could help me here, i am a beginner in >>>>>> the matter of convolutional codes, i would like if someone could asses me >>>>>> if it is possible to adapt this viterbi decoder to gr-iee802-11 at all, >>>>>> and >>>>>> in case it is indeed possible, if it is very complex task for a non >>>>>> expert >>>>>> on the matter. >>>>>> >>>>>> The source file d_viterbi.c has a comment that says: >>>>>> That changing the polynomials would need me to "regenerate the >>>>>> BUTTERFLY macro calls in viterbi()" I am not certain about what should >>>>>> the >>>>>> new parameters be for the polinomials 0133 0171. >>>>>> https://github.com/gnuradio/gnuradio/tree/master/gr-dtv/lib/dvbt >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Discuss-gnuradio mailing list >>>>> Discuss-gnuradio@gnu.org >>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >>>>> >>>>> >>>> >>> >> >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio