RangeNetworks / OpenBTS-UMTS

3G UMTS Data Radio Access Network Node
GNU Affero General Public License v3.0
300 stars 195 forks source link

found a bug in UMTS turbo interleaver #4

Open sirtom67 opened 8 years ago

sirtom67 commented 8 years ago
(dev_env)~/GitHub/OpenBTS-UMTS/CommonLibs $ git diff 1df760735bfca78
diff --git a/CommonLibs/TurboCoder.cpp b/CommonLibs/TurboCoder.cpp
index 2cdbd4f..1272b13 100644
--- a/CommonLibs/TurboCoder.cpp
+++ b/CommonLibs/TurboCoder.cpp
@@ -472,6 +472,7 @@ TurboInterleaver::TurboInterleaver(int K)
        if (K >= 481 && K <= 530) {
                p = 53;
                C = p;
+        v = 2; // specific value of "v" for p = 53 from Table 2 (aka "pv")
        } else {
                for (int pvptr = 0; ; pvptr += 2) {
                        p = pv[pvptr];
iedemam commented 8 years ago

Thanks for reporting. Could you describe the bug a bit more so we can look into it?

sirtom67 commented 8 years ago

If 481 <= K <= 530, there is a special case value of C and p rather than the lookup in Table 2. But the value of "v" should also correspond to that value of "p" (as stated in 25.212, 4.2.3.2.3.2 step 1 "Select a primitive root v from table 2 in clause 4.2.3.2.3.1, which is indicated on the right side of the prime number p.") The code as is leaves the value of "v" for this special range of K at 0, which is incorrect and causes the later steps to fail.

bbaranoff commented 6 years ago

Hello could you please say something about that ? OpenBTS-UMTS: TurboCoder.cpp:452: TurboInterleaver::TurboInterleaver(int): Assertion `K >= 40 && K <= 5114' failed.

hssamra commented 6 years ago

The value of K, for turbo coding, is required to be b/w 40 and 5114.

Harvind Samra Range Networks

On Sep 16, 2018, at 7:28 AM, bbaranoff notifications@github.com<mailto:notifications@github.com> wrote:

Hello could you please say something about that ? OpenBTS-UMTS: TurboCoder.cpp:452: TurboInterleaver::TurboInterleaver(int): Assertion `K >= 40 && K <= 5114' failed.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/RangeNetworks/OpenBTS-UMTS/issues/4#issuecomment-421774104, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGnyldtsRB0cfBYGyT1VCM2GfDBdANrrks5ubmAIgaJpZM4ISGym.

bbaranoff commented 6 years ago

Hello thanks for the response. Soory but how I get out of this error?

alejandro-amo commented 5 years ago

Hi guys, please send your patches to this fork, we are trying to reanimate the activity and concentrate the ideas and bugfixes in a single place so we all can better control the code and submit changes as well as mutually benefit from the other's ideas and knowledge.

at the time of this writing I have merged three interesting forks with patches and I have modified the code in order to correctly run with newest USRP UHD drivers.

I will like you to push your ideas there. https://github.com/EurecatSecurity/OpenBTS-UMTS