Review at  https://gerrit.osmocom.org/4675

gsm0503_coding.c: Fix tch_efr_unreorder() of one bit

There's an error in tch_efr_unreorder() function in gsm0503_coding.c
that results in increased RBER. One of the indices used by repetition
bit recombining in this function doesn't match 3GPP TS 45.003 section
3.1.1.3, specifically "w(k) = s(223) for k = 231 and 232".

This bug resulted in RBER even under ideal conditions, with no
fading or AWGN present.

Change-Id: I153da7bbc1bb3e01ed31eb5a7417e90841cfcde3
---
M src/coding/gsm0503_coding.c
1 file changed, 1 insertion(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/75/4675/1

diff --git a/src/coding/gsm0503_coding.c b/src/coding/gsm0503_coding.c
index 5213dc5..c4bdb81 100644
--- a/src/coding/gsm0503_coding.c
+++ b/src/coding/gsm0503_coding.c
@@ -1751,7 +1751,7 @@
        sum = s[172] + w[178] + w[179];
        s[172] = (sum > 2);
        memcpy(s + 174, w + 180, 50);
-       sum = s[220] + w[230] + w[231];
+       sum = s[222] + w[230] + w[231];
        s[222] = (sum > 2);
        memcpy(s + 224, w + 232, 20);
        memcpy(p, w + 252, 8);

-- 
To view, visit https://gerrit.osmocom.org/4675
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I153da7bbc1bb3e01ed31eb5a7417e90841cfcde3
Gerrit-PatchSet: 1
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <lafo...@gnumonks.org>

Reply via email to