I was doing some work with this kernel and came across an odd result
that I think is caused by a non-saturating add in the generic
proto-kernel, that should also be relevant to the 16i_max_star_16i.

I haven't looked too much in to the SSE versions, but the generic
versions are doing a comparison by subtracting two values and
comparing the result to 0. At least in the QA on armhf this is causing
wrap-around so that the smaller of the two numbers is returned as the
max.

Since I'm pretty sure this is part of the max* operator defined by
Viterbi in his "justification and implementation of a MAP decoder" I
think this result is incorrect unless I'm misunderstanding part of the
operator.

Can somebody with a little more insight in to this kernel ping back if
this is intended behavior? If not, is there some benefit to doing
(x-y)>0 vs x>y as the comparison?

Thanks,
Nathan

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to